JSONWebToken

JSONWebToken(JWT)?

예전에는 사용자(client)의 정보를 쿠키에 담아 저장했었습니다.
쿠키에 저장하는 방식은 쿠키를 변조하여 쉽게 정보를 바꿀 수 있기 때문에 보안에 취약했습니다.
JWT는 유저가 로그인하면 서버는 유저의 정보를 토큰에 담아 전달하게 됩니다.
서버는 클라이언트의 요청받을때마다 유효한 토큰인지 검증합니다.

JWT의 형태

JWT.을 이용하여 구분되어 있습니다. 첫번째 .앞은 header로 구성되어있고 두번째 .앞은 내용, 마지막은 서명으로 구성되어 있습니다. JWTJWT 디코딩 사이트를 통해 인코딩 된 값을 디코딩할 수 있습니다. 그렇기때문에 JWT에는 비밀번호를 담는 것은 매우 위험합니다.

JWT 사용 방법

1
npm install jsonwebtoken

터미널에서 위 코드를 실행하여 jsonwebtoken을 설치합니다.

1
const jwt = require('jsonwebtoken')

사용할 자바스크립트 파일에서 위 코드를 요청하여 jsonwebtoken을 활성화 해줍니다.

1
const token = jwt.sign(id, 'mysecret')

위 코드처럼 user생성과 로그인시 user의 id로만 JWT를 발행할 수 있습니다.

공유하기