-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
fix기존 작성된 코드 수정 시기존 작성된 코드 수정 시
Description
✨ About Issue ✨
현재 로직에서는 jwt 필터에서 tokenProvider.getAuthentication(token)으로 Authentication 객체 반환 ->
getAuthentication 함수 내부적으로는 token에서 이메일과 멤버타입 정보를 가지고 DB에서 member 객체를 조회하여 PrincipalDetails 저장함
현재 로직은 모든 api가 jwt 필터를 지나면서 매번 DB를 조회한다.
-> JWT의 장점 중 하나는 클라이언트가 전달하는 토큰 자체에 사용자 정보를 포함하고 있어 서버가 상태를 저장할 필요가 없다는 것인데, 이 코드에서는 매 요청마다 DB에서 사용자 정보를 조회하고 있다. -> 사용자가 많으면 DB 부하 증가
사용자 정보가 조회하지않아도 되는 api도 무조건 조회되고있음
✅ Todo
- getAuthentication 함수에서 DB 조회 로직 삭제
- PrincipalDetails에 email, memberType, id 처럼 불변이고 보안적으로 문제없는 값을 저장
- PrincipalDetails.getMember() 로직 모두 수정
Metadata
Metadata
Assignees
Labels
fix기존 작성된 코드 수정 시기존 작성된 코드 수정 시