fix: remove session concurrency

closes #717
This commit is contained in:
Gauthier Roebroeck 2021-11-07 13:16:57 +08:00
parent b972601856
commit ac0556044f
2 changed files with 17 additions and 6 deletions

View file

@ -10,7 +10,6 @@ import org.springframework.security.config.annotation.web.builders.HttpSecurity
import org.springframework.security.config.annotation.web.builders.WebSecurity
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter
import org.springframework.security.core.session.SessionRegistry
import org.springframework.security.core.userdetails.UserDetailsService
import org.springframework.security.oauth2.client.oidc.userinfo.OidcUserRequest
import org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository
@ -32,7 +31,6 @@ class SecurityConfiguration(
private val komgaUserDetailsLifecycle: UserDetailsService,
private val oauth2UserService: OAuth2UserService<OAuth2UserRequest, OAuth2User>,
private val oidcUserService: OAuth2UserService<OidcUserRequest, OidcUser>,
private val sessionRegistry: SessionRegistry,
private val sessionCookieName: String,
private val userAgentWebAuthenticationDetailsSource: WebAuthenticationDetailsSource,
clientRegistrationRepository: InMemoryClientRegistrationRepository?,
@ -78,10 +76,6 @@ class SecurityConfiguration(
it.invalidateHttpSession(true)
}
.sessionManagement()
.maximumSessions(10)
.sessionRegistry(sessionRegistry)
if (oauth2Enabled) {
http.oauth2Login { oauth2 ->
oauth2.userInfoEndpoint {

View file

@ -0,0 +1,17 @@
package org.gotson.komga.infrastructure.security.session
import mu.KotlinLogging
import org.springframework.context.event.EventListener
import org.springframework.session.events.AbstractSessionEvent
import org.springframework.stereotype.Component
private val logger = KotlinLogging.logger {}
@Component
class SessionListener {
@EventListener
fun sessionEventLogging(event: AbstractSessionEvent) {
logger.debug { "${event.javaClass.simpleName}: ${event.sessionId}" }
}
}