# 동시 세션 제어 / 세션고정보호/ 세션 정책

## 동시 세션 제어

![동시 세션 제어](https://15316191-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7_opr2RFh9Acog0_8H%2F-MI3PDwnFcTNlRDDbypM%2F-MI8tx92EXGmyenDf0zH%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202020-09-26%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%207.13.51.png?alt=media\&token=29cf4be6-bf69-487e-801a-14ff3b1a92f7)

동시 세션 제어는 동일한 계정으로 인증을 받았을 때 생성되는 세션. 세션이 초과되어졌을때의 관리 방법

방법은 두가지가 있다.

&#x20;1\. 이전 사용자 세션 만료 , 2. 현재 사용자 인증 실패

### http.sessionManagement() : 세션 관리 기능이 작동함.(공통적으로 사용)

![](https://15316191-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7_opr2RFh9Acog0_8H%2F-MI3PDwnFcTNlRDDbypM%2F-MI8vk1b5C7oUCtIxCSR%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202020-09-26%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%207.21.49.png?alt=media\&token=a304943b-26f9-439a-bdc7-c67c2fa8a692)

## &#x20;세션고정보호

![세션 고정 보호](https://15316191-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7_opr2RFh9Acog0_8H%2F-MI3PDwnFcTNlRDDbypM%2F-MI9-Gu6JCKNAuLzlGM6%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202020-09-26%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%207.41.36.png?alt=media\&token=ba913e17-c86f-4e70-945d-9dd67ec1d8c6)

세션 고정 공격을 막기 위하여 스프링 시큐리티는 세션 고정 보호 기능을 넣어놓았다.

공격자에 대한 세션을 얻더라도 스프링 시큐리티의 인증이 성공할 때마 로운 세션과 쿠키를 만들게 하였다.

![](https://15316191-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7_opr2RFh9Acog0_8H%2F-MI3PDwnFcTNlRDDbypM%2F-MI90thS5_3eLzZDdBt6%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202020-09-26%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%207.48.42.png?alt=media\&token=25d21ddf-f7ad-460c-9af4-04b9d7cc812c)

migrateSession : 이전 세션에 설정한 소수값들을 사용

newSession : 새롭게 세션을 만든다.

none : 그냥 그대로 사용한다.

## 세션 정책&#x20;

![](https://15316191-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M7_opr2RFh9Acog0_8H%2F-MI93JNXwoncDu_sAGVx%2F-MI93hzXAqK6flAWMXXV%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202020-09-26%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%208.01.03.png?alt=media\&token=9ff6e346-0bcb-4b6e-afa1-f37e02d9ee86)

&#x20;stateless를 사용할 때가 바로 jwt(JsonWebToken)이다.
