Documentation | NestJS - A progressive Node.js framework

https://github.com/nestjs/jwt

https://github.com/auth0/node-jsonwebtoken

nest 문서를 통해 JWT를 구현할 것이다.

npm i --save @nestjs/jwt 를 통해 JWT를 설치한다.

JwtCustomModule 생성

jwt 라이브러리를 사용해서 jwt를 생성하려면 몇가지 옵션이 필요하다. 그 중 중요한 것 중 하나는 secret key, 비밀 키이다. JWT의 구성요소 중 Signature가 포함된다. 이 Signature를 생성하고 확인하기 위해 존재하는 것이 비밀 키이다.

비밀 키는 암호화된 토큰을 해독하고 서명을 확인하는 데 사용되며, 유효하지 않은 서명을 감지하여 토큰의 위조나 변조를 방지 할 수 있다.

jwt 기능을 사용하기 위해 jwtModule을 import 해주어야한다.

파일을 새로 만들어 필요한 옵션을 통해 생성된 JWT 모듈, JwtCustomModule을 만들어 주고 app.module에 import 해준다.

Untitled

Untitled


Access Token Refresh Token 생성

access token과 refresh token의 차이는 만료 시간과 쓰임새이다.

access token은 권한이 필요할 때 사용되며 만료 시간이 짧은 것이 특징이다.

refresh token은 단어처럼 access token을 재발급을 받기 위해 쓰이며 만료 시간이 길다.