📌 Self-Contained 방식
- 필요한 모든 정보를 자체적으로 지니고 있어서 자신의 객체를 사용 하는 것
권한부여 : 사용자가 로그인하면 이후의 각 요청에는 JWT가 포함되어 사용자가 해당 토큰으로 허용된 경로, 서비스 및 리소스에 접근할 수 있다.
정보 교환: 공개/개인 키 쌍을 사용하여 JWT에 서명할 수 있으므로 보낸 사람이 누구인지 확인할 수 있다. 또한 정보가 도중에 조작되지않았는지 확인 할 수 있다.
📌 오버헤드 ?
A라는 처리를 실행하는데 5초 걸린다.이 때 안전성을 고려하고 부가적인 B라는 처리를 추가한 결과 처리 시간이 15초이다.이 경우 오버헤드는 10초이다.
또한 B를 개선하여 B'라는 처리를 한 결과 처리 시간이 12초라면 오버헤드가 3초 단축되었다고 한다.
Payload
key-value 형식으로 이루어진 한 쌍의 정보를 Claim이라고 칭한다.
등록된 클레임
공개 클레임
JWT 토큰에서 사용하기 위해 정의 되었지만, 충돌이 방지된 네임스페이스를 담고있는 URI 와 같이 이름이 충돌되지 않도록 해야함.
{
"https://velog.io/@chkfrdlek": true
}
비공개 클레임
두 개체(서버와 클라이언트)가 정보를 공유하기 위해 사용하기로 합의한 클레임 정보
{
"token_type": access
}
참고 사이트
망나니 개발자
https://icarus8050.tistory.com/12
https://jwt.io/
위키백과