1.JWT(JSON Web Token)
(1) 유저의 정보를 담은 객체를 암호화하여 문자열로 만들어 암호화된 키(accessToken)를 브라우저로 전달해 줌
(2) 브라우저 저장소에 저장해두었다가 유저 정보가 필요한 API를 사용할 때 API 요청과 함께 보내주면, 이를 백엔드에서 복호화해서 사용자를 식별한 후 접근이 가능하게 함
(3) 발급 받아온 서버에서 정상적으로 발급을 받았다는 증명하는 signature를 가지고 있음
(4) 사용자 정보를 DB를 열어보지 않고도 식별 할 수 있게 됨
2. JWT 토큰의 구성
(1) header: 토큰의 타입, 암호화 시 사용한 알고리즘 정보
(2) payload: 토큰 발행정보(발행자, 발행일, 만료일)
(3) signature : 토큰의 비밀번호
3. JWT 주의 사항
(1) JWT는 암호화는 했지만 누구든 열어볼 수 있음
(2) 그렇기에 중요한 데이터는 JWT 토큰에 저장하면 X
(3) 토큰 생성 시 signature(토큰의 비밀번호)를 생성하여 상용, 이 비밀번호로 토큰 조작 여부 판단
'Javascript > NestJS' 카테고리의 다른 글
Login Process (0) | 2022.12.05 |
---|---|
브라우저 저장소(Web Storage), Cookie (0) | 2022.12.05 |
DB Schema / ERD (0) | 2022.11.20 |
TypeORM (0) | 2022.11.20 |
NestJS (0) | 2022.11.20 |