Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] JWT issuer가 의도하지 않은 값으로 설정됨 #415

Open
withSang opened this issue Oct 7, 2023 · 0 comments
Open

[Bug] JWT issuer가 의도하지 않은 값으로 설정됨 #415

withSang opened this issue Oct 7, 2023 · 0 comments
Assignees
Labels
😱 bug Something isn't working d-needed (Discussion Needed) 의논 필요

Comments

@withSang
Copy link
Member

withSang commented Oct 7, 2023

Describe the bug

issuer란

JWT에서 issuer는 JWT를 생성하고 서명한 주체를 나타내는 문자열입니다.
JWT 표준을 명시한 RFC 7519에 의하면 issuer는 URI 또는 문자열이어야 합니다.
현재 jsonwebtoken 라이브러리를 사용할 때 다른 주체가 서명한 JWT가 유효하게 처리되는 것을 방지하기 위해 JWT를 검증할 때마다 issuer의 값이 서명할 때 사용한 issuer와 같은지 검증하고 있습니다.

현재 문제와 해결법

issuer: process.env.FRONT_URL || "http://localhost:3000", // optional (default = "http://localhost:3000")

현재 JWT를 생성할 때 issuer가 prod/dev 서버 공통으로 "http://localhost:3000"으로 설정되어 있습니다.
이는 실제 issuer 정보와 다르기 때문에, 이를 "sparcs-taxi"와 같은 문자열로 수정할 필요가 있습니다.

주의 사항

issuer를 변경하면 이전에 발급했던 모든 JWT가 무효화되기 때문에, 택시 앱에서 로그인을 다시 진행해야 합니다.
따라서 이 작업은 이벤트 기간 이후 진행되어야 합니다.

https://github.com/auth0/node-jsonwebtoken#jwtverifytoken-secretorpublickey-options-callback
issuer를 변경해도 현재 jwt.verify를 사용할 때 issuer를 검증하고 있지 않기 때문에, 기존 토큰이 무효화되지 않습니다.

To Reproduce

재현 방법 없음.

Screenshots

없음.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
😱 bug Something isn't working d-needed (Discussion Needed) 의논 필요
Projects
Status: To do
Development

No branches or pull requests

1 participant