[면접 준비] JWT, Refresh, Access Token에 대해서 설명해주세요. (24/04/02)
2024. 4. 2. 09:14ㆍ공부/면접 준비
JWT(Json Web Token)
선택적 서명과 선택적 암호화를 사용하여 데이터를 만들기 위한 표준으로, 필요한 모든 정보를 json객체에 담아 전달하는 웹 표준 입니다. 필요한 모든 정보를 담아 전달하기 때문에 JWT 한가지로 인증을 마칠 수 있으며, 웹 표준이기 때문에 대부분의 언어가 지원합니다.
헤더와 페이로드로 구성되어 있으며, 헤더에는 JWT에서 사용할 타입과 해시 알고리즘이, 페이로드에는 서버에서 보내는 인코딩된 정보가 담겨 있습니다.
Access Token
- 클라이언트가 갖고 있는 유저 정보가 담긴 토큰
- 사용자가 리소스에 접근할 수 있도록 권한을 부여
- 인증용 토큰
- 클라이언트가 서버에 자원에 대한 요청을 할 때 요청과 함께 전송됨.
- 짧은 유효기간
- 만료시 리프레시 토큰을 사용.
Refresh Token
- 액세스 토큰 재발급
- 액세스 토큰이 만료된 후, 재발급을 위해 사용됨
- 긴 유효 기간
- 액세스 토큰보다 긴 유효기간을 가지며, 보안적으로 더욱 강력한 보호를 받는다.
- 액세스 토큰이 탈취되는건 문제가 없지만, 리프레시 토큰이 탈취되는건 심각한 문제를 일으킬 수 있기 때문.
답변
JWT는 사용자 인증과 권한부여의 웹 표준으로, 필요한 정보를 암호화한 뒤 페이로드에 담아 서버에 전달됩니다.
액세스 토큰은 사용자 인증에 사용되는 토큰으로, 유저 정보가 담겨있으며 유효기간이 비교적 짧습니다.
리프레시 토큰은 액세스 토큰 재발급에 사용되며, 상대적으로 긴 유효기간과 보안적으로 더욱 강력하게 보호받습니다.
'공부 > 면접 준비' 카테고리의 다른 글
[면접 준비] 쿠키, 세션의 개념과 차이를 설명해보세요 (24/04/03) (0) | 2024.04.03 |
---|---|
[면접 준비] OAuth에 대해서 설명해주세요. (24/04/02) (0) | 2024.04.02 |
[면접 준비] ORM을 사용하면서 쿼리가 복잡해지는 경우에는 어떻게 해결하는게 좋을까요? (24/04/01) (0) | 2024.04.01 |
[면접 준비] 대용량 트래픽 발생 시 어떻게 대응해야 하나요? (24/04/01) (1) | 2024.04.01 |
[면접 준비] Primary Key, Foreign Key에 대해 설명해주세요 (24/03/29) (0) | 2024.03.29 |