본문 바로가기
프로그래밍/CS

토큰기반 인증(Token-based Authentication)

by 숙님 2022. 7. 15.
728x90

토큰은 유저 정보를 암호화하기 때문에 클라이언트에 담을 수 있음 

 

대표적인 방법: JWT(JSON Web Token)

1. 엑세스 토큰

2. 리프레시 토큰 

JWT는 세 부분이 존재,  header, payload, signature로 존재 

 

head 예시(어떤 토큰인지, 어떤 알고리즘으로 암호화할지 적혀있음)

{
 "typ": "JWT"
 }

 

payload 예시(단어 그대로 서버에서 활용할 수 있는 유저의 정보 담김)

{
  "sub" : "someInformation", 
  "name" : "phillip",
  "iat" : 1323453
  
 }

 

signature

HMACSHA256(base64UrlEncode(header) + '.' + base64UrlEncode(payload), secret);

 

토큰 기반 인증의 장점 

1. 무상태성 & 확장성

2. 안정성 

3. 생성의 용이성 

4. 권한 부여 용이 

'프로그래밍 > CS' 카테고리의 다른 글

기술면접 준비(재귀, 웹표준, 보안)  (2) 2022.07.20
[인증/보안] Auth Oauth  (0) 2022.07.18
웹 공격(OWASP, XSS 등)  (0) 2022.07.15
TCP/IP  (0) 2022.07.14
웹 접근성(Web Accessibility)  (0) 2022.07.11

댓글