Spring Security jwt-claim

이민우·2023년 7월 25일
0

오늘은 스프링 시큐리티에서 jwt를 생성할때 claim 값을 주는 것을 살펴보자

claim이란 쉽게 body 영역이라고 생각해도 될듯하다 쿠키에 저장되는 유저의 데이터를 가지고 있다.

위의 토큰을 생성하는 부분중에 살펴볼 곳은 .claim 으로 인자를 순서대로 문자열인 이름, 토큰에 들어갈 데이터를 지정해 준다면 생성된 토큰에서 넣은 데이터들을 확인 할 수 있다.

위의 예시에선 claim이 두개인데 AUTHORIZATION_KEY는 변수로 데이터의 이름값을 String 값으로 가지고 있다.

최종적으로 식별자값과 claim으로 설정한 권한과 닉네임을 가진 토큰을 생성하는 것이다.

위의 코드는 스프링 시큐리티 에서 로그인에 성공했을 때 동작하는 필터의 메소드로 위의 예시에서 필요한 인자들을 로그인을 성공할때 생성되는 Authentication 에서 가지고와서 넣어주고 토큰을 생성한후 .addHeader를 통해 클라이언트의 헤더에 토큰값을 넣어준다.

위와같이 클라이언트에 토큰값이 저장된것을 확인 할 수 있고 클라이언트는 이러한 토큰값을 api가 동작할때 서버로 보내주면 서버는 받은 토큰값을 이용해 사용자를 판단한다.

마지막으로 토큰값에 데이터가 잘 들어있는지 확인해보자
jwt.io 사이트를 활용하겠다.

위의 결과와 같이 .claim 으로 넣어준 auth, nickName 값이 성공적으로 들어간것을 확인 할 수 있다.

profile
개린이

0개의 댓글

관련 채용 정보