Skip to content
This repository has been archived by the owner on Mar 26, 2024. It is now read-only.

[REQ] Refresh-token은 redis에 저장하고, client에게 넘겨주지 않는다. #161

Open
Dr-KoKo opened this issue Jan 22, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@Dr-KoKo
Copy link
Member

Dr-KoKo commented Jan 22, 2024

기능

Refresh-token은 redis에 저장하고, client에게 넘겨주지 않는다.

설명

현재 사용자가 login을 하면 access-token과 더불어 refresh-token도 cookie에 담아서 넘겨주고 있습니다. 하지만 refresh-token도 client에게 넘겨주게 되면 탈취당했을 경우, 무한히 세션을 유지할 수 있다는 치명적인 보안 이슈가 있습니다. 따라서 최초 로그인 시점의 ip를 저장해서 refresh하기 전에 ip를 체크하는 절차를 가지고 있습니다.
하지만 이미 access-token에 대응되는 refresh-token(+ip, device정보)을 redis에 저장하고 있으므로, 더 이상 client에게 refresh-token을 넘겨줄 필요가 없습니다. 이에 Cookie로 refresh-token을 넘겨주는 기능을 제거하여 보안취약점을 해결하고자 합니다.

기대 효과

Client에게 더 이상 Refresh-token을 넘겨주지 않으므로 무한 refresh 문제가 보안된다.

@Dr-KoKo Dr-KoKo added the enhancement New feature or request label Jan 22, 2024
@Dr-KoKo Dr-KoKo added this to the 보안 milestone Jan 22, 2024
@Dr-KoKo Dr-KoKo self-assigned this Jan 22, 2024
@happymink happymink moved this to Todo in BE Project Jan 25, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
Status: Todo
Development

No branches or pull requests

1 participant