Spring

Spring Security 중복로그인 막기

91cm 2018. 9. 4. 22:57


1) WEB.xml에 추가


1
2
3
4
5
<listener>
    <listener-class>
      org.springframework.security.web.session.HttpSessionEventPublisher
    </listener-class>
</listener>
cs




2) security-context.xml 파일에 상황에 맞게 추가

max-session : 최대 세션수

error-if-maximum-exceeded : 현재 접속한 세션수보다 많으면 에러 발생



상황1)

1)중복로그인 시도 

2)현재 접속중인 로그인유저 무효

3)중복로그인 시도자 로그인 성공 

1
2
3
4
5
6
<http>
    <session-management>
        <concurrency-control max-sessions="1" />
    </session-management>
</http>
 
cs



상황2)

1)중복로그인 시도

2)현재 접속중인 로그인유저 유지

3)중복로그인 시도자 로그인 실패

1
2
3
4
5
<http>
    <session-management>
        <concurrency-control max-sessions="1" error-if-maximum-exceeded="true" />
    </session-management>
</http>
cs