• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

JWT 토큰 유효성 검사

23.03.23 15:42 작성 조회수 892

0

안녕하세요! 좋은 강의 제공해주셔서 감사합니다. 다름이 아니라, 수업에서 JWT 토큰 유효성 로직을 api gateway service에 구현했는데, user-service가 아닌 gateway service에 구현한 이유가 있을까요?

api gateway에 토큰 유효성 로직을 구현하게 되면, 만료된 토큰으로 api gateway를 거치지 않고 바로 user-service에 요청하는 경우, 토큰 유효성 검사를 하지 않아서 문제가 발생할 수 있지 않나요?

답변 1

답변을 작성해보세요.

0

안녕하세요, 이도원입니다.

API Gateway의 사용 용도는 사용자의 요청에 따른 서비스에 대한 진입로 결정 및 분산 처리 뿐만 아니라, 일괄적인 로그인 처리, 로깅 처리, 트래픽 제어 등의 작업을 하기 위함입니다. 따라서, 강의에서는 api-gateway 서비스를 사용자에 대한 단일 진입점을 만들어 줌과 동시에, 로그인 처리도 api-gateway를 통해서 처리한 다음, user-servier, order-service, catalog-service 등을 호출하고 있습니다. 사용자 인증에 대한 처리는 user-service에만 추가되어 있는데, order-service, catalog-service 모두 같은 처리로 하실 수 있을거라 생각됩니다. 물론, 말씀하신 내용처럼 user-service에서 사용자 인증 처리를 하실 수도 있습니다만, 앞서 말씀드린 것 처럼, api-gateway 서비스의 용도에 로그인 처리를 포함시켜 진행했다고 보시면 좋을 것 같습니다. 그리고 api-gateway를 거치지 않고 user-service 등을 직접 호출한 경우에는 토큰에 대한 유효성 체크가 안될수 있다고 하는 부분은 맞습니다만, user-service와 같은 서비스 레벨의 MSA를 반드시 api-gateway를 통해서만 실행될 수 있도록 설정하면, 굳이 모든 서비스에서 인증처리가 필요하지 않을 수 있습니다. 참고해 주세요.

감사합니다.