개발 무지렁이

[Essencial Concepts] 토큰 기반 인증방식 JWT와 OAuth 본문

Backend/백엔드 필수개념

[Essencial Concepts] 토큰 기반 인증방식 JWT와 OAuth

Gaejirang-e 2023. 7. 16. 22:08

🪙. 토큰(Token) 기반 인증 방식

: 클라이언트서버 간의 인증을 위해 토큰🪙을 사용하는 방식을 말한다.
(1) 사용자🐽가 ID/Pwd를 제공하여 로그인을 시도한다.
(2) 서버는 사용자🐽의 신원을 확인하고, 유효한(Valid) 경우 서버측에서 토큰🪙을 발급한다.
(3) 해당 토큰🪙을 클라이언트로 전송한다.
(4) 클라이언트는 이후 요청할 때마다, 토큰🪙을 헤더에 포함시켜 서버에 전송한다.
(5) 서버는 토큰을 확인하여 사용자🐽의 신원과 권한을 확인하고
데이터를 전송한다.

JWT(JSON Web Token)


서버와 클라이언트 간 인증을 위한 암호화된 토큰🪙을 말한다.
헤더(암호화 알고리즘) + 페이로드(사용자ID, 권한) + 서명(비밀키)으로 구성되며
사용자🐽가 로그인을 하면, 서버측에서 JWT🪙를 생성, 클라이언트로 전송하여
클라이언트가 요청할 때마다 JWT🪙를 헤더에 포함시켜 서버로 전송한다.
서버는 JWT🪙를 검증하여 클라이언트의 신원🐽을 확인한다.

⚠️. 세션을 서버에 저장할 필요가 없다.
⚠️. 암호화되어 위조 방지할 수 있다.
⚠️. 서버와 클라이언트 간 🧩 신뢰성을 보장한다.

OAuth


'제 3자 인증방식'을 말한다.
신뢰할 수 있는 서버에 정보를 맡겨놓고,
접근할 수 있는 Access Token🪙을 발급하여,
서비스를 제공하는 서버측에 주는 것을 말한다.

       Tistory's Card

Comments