Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- Jenkins
- PrivateSubnet
- terraform main commands
- Docker
- 인텔리제이
- Timezon설정
- s3
- haproxy
- SELinux비활성화
- binarysearch
- Jenkinspipeline
- terraform
- algorithm
- ec2
- 프로그래머스
- terraform backend
- heapq
- Python
- lsof
- java
- terraform 기본개념
- session manager
- Mac
- terraform variable
- endpoint
- terraform 설치
- 이진탐색
- Process monitoring
- linuxr계정설정
- JWT
Archives
- Today
- Total
MONG 기술블로그
JWT 기반 인증 방식 본문
JWT ( Json Web Token ) 이란 ?
JWT는 Json Web Token의 약자로, 웹 애플리케이션에서 사용자 인증을 관리하기 위한 토큰 기반의 인증 방식 중 하나이다.
JWT는 .(dot)을 구분자로 세 부분으로 이루어져있는데, 이중 첫번째인 헤더는(Header) JWT가 어떤 암호화 알고리즘을 사용하는지 나타낸다.
두번째로 페이로드(Payload)는 JWT에 담길 정보를 포함하며, 마지막으로 서명(Signature)는 토큰의 무결성을 보장하기 위한 서명이다.
JWT 방식은 세션 기반 인증 방식과 달리 서버에서 클라이언트에 발급된 토큰을 기반으로 인증 정보를 관리하기에 세션 기반 인증 관리에 비해 서버의 부하를 줄일 수 있다.
다음은 Header / Payload / Signature 로 구성된 JWT Token 예시를 살펴보자.
JWT Token 예시


JWT 인증방식
1. 클라이언트가 서버에 로그인 요청을 보냅니다.
2. 서버는 사용자 정보를 검증한 후, JWT를 발급하여 클라이언트에게 전달합니다.
3. 클라이언트는 발급받은 JWT를 저장합니다.
4. 클라이언트가 인증이 필요한 요청을 서버에 보낼 때, JWT를 HTTP 헤더에 담아서 보냅니다.
5. 서버는 JWT의 서명을 검증하여 해당 요청이 유효한지 확인한 후, 요청에 대한 응답을 반환합니다.
이를 그림으로 나타내면 다음과 같다.
'Programming > SpringBoot' 카테고리의 다른 글
Spring DI / IoC (0) | 2023.02.27 |
---|---|
SpingInitializer를 이용한 SpringBoot 프로젝트 세팅 (0) | 2023.02.22 |
SpringBoot의 HTTP Method API 정리 (0) | 2023.02.22 |
Comments