TIL - JWT 관리 (ResponseHeader / Cookie)

su·2023년 7월 26일
0

TIL

목록 보기
50/93
post-thumbnail

문제 - JWT 관리하기

1) 문제

spring security를 사용해서 로그인 기능을 구현하고자 했다.
프론트와 연결하기 전에는, postman으로만 테스트를 진행했다.
그래서 로그인 할 때 입력하는 아이디와 비밀번호가 DB에 있는 것과 일치한다면,
JWT를 Response Header에 담아주면서 로그인이 성공됐다는 메시지를 반환했다.
하지만 프론트와 연결하고 보니, 화면의 개발자 도구에서 만든 JWT를 찾을 수가 없었다 ..!
분명 로그인이 완료되어서 화면이 넘어갔는데, 어디에서도 JWT를 볼 수 없었다.

2) 시도 & 해결

postman 에서 테스트를 진행했을 때는 로그인 완료 후에 Response Header에서 JWT가 담긴 것을 확인했다.
그리고 그 JWT를 직접 Request Header에 다시 담아서 다른 테스트들을 진행했었다.
하지만 프론트와 연결했을 경우, Response Header에 담은 JWT를 직접 확인할 수 없으니,
개발자 도구에서 확인할 수 있는 Cookie에 담아주어야 했다.

따라서 코드를 변경하면 된다 !
원래 JWT를 생성한 다음에 Response Header에 담아주었지만,
그 코드를 Cookie에 직접 담아주는 코드를 변경했다.
그리고 이후에 인가 과정에서도, Request Header에서 JWT를 갖고온 후에 유효성 검사를 진행하던 코드에서 Cookie에서 JWT를 갖고오는 코드로 변경했다.

3) 배운 점

프론트와 연결하면서 혼란스러웠던 점이 많았는데,
JWT는 Cookie에 담아서 검증하는 것이 좋은 것 같다.
로그아웃 시에 적용할 수 있는 코드는 추가적으로 공부하는 것이 좋을 것 같다.
그리고 소셜 로그인도 적용해봐야겠다 !

profile
(❁´◡`❁)

0개의 댓글