반응형
쿠키값은 임의로 변경될 수 있고
쿠키에 보관된 정보는 해킹될 수 있기에
서버에 중요한 정보를 보관하고 연결을 유지하는 방법, 즉 세션으로 로그인처리해야 한다.
동작방식:
1. 사용자가 로그인, 비밀번호 정보를 저장하면 서버에서 해당 사용자가 맞는지 확인한다.
2. 그럼 서버에서 추정불가능한 랜덤값, 즉 'UUID'를 만든다.
3. 서버는 세션 저장소를 만들고 그 값(UUID)을 토큰 키(sessionId)로 사용한다.
4. 값(value)은 회원객체로 매핑한다.
5. 그렇게 서버에 sessionId와 value가 저장된다. 세션아이디를 알면 회원 객체를 꺼낼 수 있다.
6. 서버는 클라이언트에 'sessionId만 쿠키에 담아서 전달한다.
7. 클라이언트는 쿠키저장소에 sessionId 정보가 담긴 쿠키를 보관한다.
*회원과 관련된 정보는 전혛 클라이언트에 전달되지 않는다.
*추정 불가능한 세션id만 쿠미를 통해 클라이언트에 전달한다.
8. 웹브라우저가 특정페이지 들어가면 쿠키를 전달하는데, sessionId 정보를 서버로 전달한다.
9. 서버에서는 세션저장소를 뒤져서 키(sessionId)에 맞는 value(회원객체)가 있는지 확인한다.
'Study > SpringBoot' 카테고리의 다른 글
[SpringBoot] 문제해결: template might not exist or might not be accessible by any of the configured Template Resolvers (1) | 2021.11.18 |
---|---|
[SpringBoot]@Mapper (0) | 2021.10.10 |
[SpringBoot] 서블릿 예외 처리 (0) | 2021.09.04 |
[Spring Boot]스프링 인터셉터 (0) | 2021.09.03 |
[Spring Boot]서블릿 필터란? (0) | 2021.09.01 |