티스토리 뷰
JSON Web Tokens ( JWT )
JWT는 "jot" 이라고 불리기도 합니다.
JWT의 장점은 다른 프로그래밍 언어와 잘 작동한다는 점!
- .NET, Phthon, Node.js, Java, PHP, Ruby, GO ... 등 많이 있고, 여러분은 많은 다양한 라이브러리와 호환해서 사용할 수 있습니다
- 자체에 정보를 담는다. JWT 는 기본적인 정보를 스스로 담아 전달할 수 있습니다. ( Payload 또는 Signature 를 통해 )
- 정보를 자체에 담기 때문에, HTTP 헤더안에 담아 사용되어집니다. ( API 인증 등 ) 또한 URL을 통해서도 가능 합니다.
JWT는 세가지 부분으로 나뉩니다
- header
- JWT 타입의 선언
- 사용하는 해싱 알고리즘
ex ) { "typ" : "jwt" , "alg" : "HS256" }
- payload : payload는 토큰에 대한 정보와 함께 추가적으로 원하는 정보를 담는 부분입니다.
- Registered Claims
- iss : 토큰에 대한 발행자
- sub : 토큰의 제목(주제)
- aud : 토큰을 받는 사람의 정보(?)
- exp : 토큰 만기 시간
- nbf : not before - 처리하는 동안 반드시 받아들이지 않을 시간 정의
- iat : JWT 발행 된 시간
- jti : JWT를 위한 식별자, 재실행되는 것을 예방할 수 있다.
- Public Claims
- 사용자 이름, 정보, 그 외 중요한 정보들을 생성할 수 있다.
- Private Claims
- 생성자와 사용자가 모두 동의하면 claim 이름을 개인적으로 사용할 수 잇음, 충돌의 위험이 있으므로 주의하여 사용해야합니다.
ex) { "iss" : "woobong", "exp" : 1300819380", "name" : "heo woo beom", "admin" : true }
- signature : JWT의 서명(?)을 만드는 것! header와 payload를 가지고서 해시화 하여 생성한다.
ex) var encodedString = base64UrlEncode(header) + "." _ base64UrlEncode(payload);
HMACSHA256(encodedString, 'secret');
과 같은 방법으로 사용합니다.
'생활코딩 > Full Stack' 카테고리의 다른 글
개념 01 - 데이터 바인딩, DI, Directives (0) | 2015.01.20 |
---|---|
Node Authentication 02 - JWT 실습 (0) | 2015.01.19 |
Node and npm Version Numbering : package.json 내에 dependencies 모듈 버전 이해하기 (0) | 2015.01.16 |
PC에서 모바일 페이지로 이동 (0) | 2014.12.22 |
Express + Node.JS + AngularJS Seed Project (0) | 2014.12.12 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 정적 파일
- 오프라인 확인
- WYSIWYG
- 초대장
- static resources
- AngularJS
- 브라우저 콘솔
- @Access
- 스프링 부트
- log4jdbc
- summernote
- @Temporal
- spring jpa
- jsonify
- AOP
- telegram bot
- 한성키보드
- Excel
- java
- mybatipse
- GO1104 LED
- Spring
- learning javascript
- RollingFileAppender
- 쿼리 로그
- bootstrap
- offline.js
- Spring Boot
- 자바스크립트
- jQuery 삽입
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함