From f592a9eda2e7209a8d776af6239cbe5dabdc5684 Mon Sep 17 00:00:00 2001 From: Gauthier Roebroeck Date: Wed, 6 Oct 2021 14:33:56 +0800 Subject: [PATCH] feat: remember-me validity can be configured using duration notation you can use configurations like: - '30d' for 30 days - '24h' for 24 hours --- .../komga/infrastructure/configuration/KomgaProperties.kt | 4 ++-- .../komga/infrastructure/security/SecurityConfiguration.kt | 4 ++-- komga/src/main/resources/application-dev.yml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/komga/src/main/kotlin/org/gotson/komga/infrastructure/configuration/KomgaProperties.kt b/komga/src/main/kotlin/org/gotson/komga/infrastructure/configuration/KomgaProperties.kt index ea34fa3a8..350a5958e 100644 --- a/komga/src/main/kotlin/org/gotson/komga/infrastructure/configuration/KomgaProperties.kt +++ b/komga/src/main/kotlin/org/gotson/komga/infrastructure/configuration/KomgaProperties.kt @@ -42,8 +42,8 @@ class KomgaProperties { @get:NotBlank var key: String? = null - @get:Positive - var validity: Int = 1209600 // 2 weeks + @DurationUnit(ChronoUnit.SECONDS) + var validity: Duration = Duration.ofDays(14) } class Cors { diff --git a/komga/src/main/kotlin/org/gotson/komga/infrastructure/security/SecurityConfiguration.kt b/komga/src/main/kotlin/org/gotson/komga/infrastructure/security/SecurityConfiguration.kt index 5224b3842..726dd24a5 100644 --- a/komga/src/main/kotlin/org/gotson/komga/infrastructure/security/SecurityConfiguration.kt +++ b/komga/src/main/kotlin/org/gotson/komga/infrastructure/security/SecurityConfiguration.kt @@ -103,13 +103,13 @@ class SecurityConfiguration( } if (!komgaProperties.rememberMe.key.isNullOrBlank()) { - logger.info { "RememberMe is active, validity: ${komgaProperties.rememberMe.validity}s" } + logger.info { "RememberMe is active, validity: ${komgaProperties.rememberMe.validity}" } http .rememberMe { it.rememberMeServices( TokenBasedRememberMeServices(komgaProperties.rememberMe.key, komgaUserDetailsLifecycle).apply { - setTokenValiditySeconds(komgaProperties.rememberMe.validity) + setTokenValiditySeconds(komgaProperties.rememberMe.validity.seconds.toInt()) setAlwaysRemember(true) setAuthenticationDetailsSource(userAgentWebAuthenticationDetailsSource) } diff --git a/komga/src/main/resources/application-dev.yml b/komga/src/main/resources/application-dev.yml index 001129222..9a73694b6 100644 --- a/komga/src/main/resources/application-dev.yml +++ b/komga/src/main/resources/application-dev.yml @@ -1,7 +1,7 @@ komga: remember-me: key: changeMe! - validity: 2592000 # 1 month + validity: 30d # libraries-scan-cron: "*/5 * * * * ?" #every 5 seconds libraries-scan-cron: "-" #disable libraries-scan-startup: false