Authorization은 유저가 요청하는 request를 실행할 수 있는 권한이 있는 유저인가를 확인하는 절차를 말한다.
access token
을 생성한다. access token
에는 유저 정보를 확인할 수 있는 정보가 들어 있어야 한다.access token
을 첨부해서 보낸다.access token
을 복호화한다.user_id
를 얻는다.user_id
를 사용해서 DB에서 해당 유저의 권한(permission)을 확인한다.Unauthorized Response(401)
혹은 다른 에러 코드를 보낸다.JWT는 당사자 간에 정보를 JSON 개체로 안전하게 전송하기 위한 간결하고 자체 포함된 방법을 정의 하는 개방형 표준이다.
사용자가 로그인하면 각 후속 요청에는 JWT가 포함되어 사용자가 해당 토큰으로 허용된 경로, 서비스 및 리소스에 접근할 수 있다.
1. 응용 프로그램 또는 클라이언트가 권한 부여 서버에 권한을 요청한다.
2. 인증이 부여되면 인증 서버는 액세스 토큰을 응용프로그램에 반환한다.
3. 프로그램은 액세스 토큰을 사용하여 API와 같은 보호된 리소스에 액세스한다.
해당 access token
을 복호화 하면 다음같은 유저의 id를 얻을 수 있다.