JWT (Json Web Token) 클라이언트-서버 간 서비스 통신 시 정보를 json 객체를 통해 안전하게 전송하고 권한을 위해 사용하는 토큰이다. 사용 이유 인증 권한 부여 사용자가 로그인하고 난 뒤 서버에 보내는 요청에 JWT 토큰이 포함되어서 사용자가 해당 토큰으로 허용되는 경로에 엑세스 할 수 있음 ( API 접근 등) JWT 구조 세 파트로 이뤄지고, 각 파트는 점으로 구별한다. (A) Header 토큰 타입과 해시 암호화 알고리즘으로 구성되어 있다. 토큰 타입: jwt 해시 암호화 알고리즘: BASE 64 ..etc (B) PayLoad 토큰에 담을 클레임 (claim) 정보를 포함하고 있다. 클레임의 정보는 비공개, 공개, 등록 클레임 세가지가 있다. (C) signature secret..
인증 메커니즘 스프링 시큐리티는 보안 관련 요구사항들을 각각 필터 형태로 어플리케이션에 삽입하고, 사용자의 요청을 가로채서 보안적 역할을 한다. 1. AuthenticationFilter에 의해 사용자의 요청을 가로챈다. 사용자의 요청을 검증하는 인증 필터인 AuthenticationFilter가 AuthenticationManager에 의해 검증된다. 2.AuthenticationManager가 요청을 검증한다. Filter에서 가로챈 요청을 AuthenticationManager은 사용자의 검증한다. 3. AuthenticationProvider 목록을 순회하며 검증에 필요한 특정 유행의 인증을 수행한다. AuthenticationManager 는 다수의 AuthenticationProvider를 순..