골반아프다
15
2021-01-06 20:41:52
4
236

jwt 화면 이동 시 토큰 인증 어떻게 하나요 ??


안녕하세요 선배님들!

현재 spring security + jwt 를 구현해보는 중  BasicAuthenticationFilter 를 통해서 토큰이 유효한지와 로그인 유무 등을 체크하는 부분에서 막히는 부분이 있습니다.

페이지 이동 시에도 filter 를 걸치는데 

이럴 경우 header Authorization 에 토큰을 담지 못해서 null 이 뜨는데 요런 경우는 어떻게 해결하나요? 혹은 처음부터 매요청 header에 담지 않고 저장된 쿠키를 사용해도 되나요?

추가로 refresh token 를 서버사이드에도 저장하고 클라이언트에도 저장하라는데 access token 처럼 refresh token 도 쿠키에 저장하게 되면 오래 노출되서 탈취될 수 있는거 아닌가요? ㅠㅠ 이부분에 대해 다들 어느식으로 하시는지 조언 부탁드립니다. 


1
  • 답변 4

  • 한국은역시자바
    578
    2021-01-06 21:01:21

    프론트와 백단을 분리하시면 됩니다.

  • 골반아프다
    15
    2021-01-06 21:04:38
  • 작별왕바이킹
    873
    2021-01-07 10:29:22

    front/back 분리 안하셨다면 jwt 토큰을 REDIS에 세션ID를 키로 저장하는 것도 방법입니다.

    Custom Filter 하나 만들어서 security filter 0번 자리에 지정하고,

    request에서 session id로 redis에서 저장된 token이 있는지 확인하구요.

    redis, jwt expired 각각 확인해서 만료됐으면 login page로 redirect 시켜도 됩니다.


  • 골반아프다
    15
    2021-01-13 19:30:08

    작별왕바이킹 프론트와 백을 분리하라는 말이 어느식으로 하라는 건지 이해가 안됩니다 ㅠㅠ 

  • 로그인을 하시면 답변을 등록할 수 있습니다.