wafflestudio / waffle-account-server

WaffleStudio Account Server for SSO
8 stars 0 forks source link

JWT RSA signing 및 GET /v1/users/me 구현 #13

Closed chosanglyul closed 2 years ago

chosanglyul commented 2 years ago

PR의 가장 큰 변경점은 JWT Signing 알고리즘 변경입니다. 기존의 대칭키 알고리즘에서 RSA를 기반으로 한 공개키 RS512 알고리즘을 사용하도록 하였습니다.

이 PR 이후부터 서버는 API Gateway를 통해 접근됨을 가정합니다. 이에 따라, 구현되어 있었던 Spring Security에서 Token을 검증하는 로직은 삭제하였습니다. API Gateway는 JWT를 검증한 후 header의 userIdtoken.sub를 복사합니다. GET /v1/users/mePUT /v1/validate의 구현을 보면 이를 알 수 있습니다. 또, GET /v1/users/me에서는 자신의 정보를 받을 수 있도록 테스트 목적을 겸한 API를 작성해 두었습니다.

PR 머지 이후에는 EC2를 Private Subnet에 넣고, API Gateway -> VPC Link -> NLB -> EC2로만 데이터가 이동하게 aws 구성 작업을 진행할 예정입니다.