Concepts
PASSPORT 로그인
PASSPORT 로그인은 PASSPORT 계정으로 다양한 서비스에 로그인할 수 있도록 하는 소셜 로그인 서비스입니다. 이를 통해 복잡한 인증, 인가 과정을 간소화하고 안전하게 처리할 수 있을 뿐만 아니라, 맥스버스에서 제공하는 다양한 API를 사용할 수 있습니다.
PASSPORT 로그인 서비스를 사용하기 위해서는 맥스버스 Console에 먼저 애플리케이션을 등록해야 합니다. 로그인 서비스 이용을 위한 기본적인 정보 입력 후, 애플리케이션에서 PASSPORT 로그인 서비스를 사용할 수 있습니다.
PASSPORT 로그인은 OAuth 2.0 의 인가 프레임워크와 OpenID Connect 프로토콜을 사용하여, 사용자를 인증하고 맥스버스 리소스 접근을 위한 권한 제공 기능을 제공하고 있습니다. PASSPORT 로그인을 통해 고객 인증, 인가가 이루어지는 방식은 다음과 같습니다.
Name | Description |
---|---|
인증(Authentication) | PASSPORT ID, PW를 통해 사용자의 신원을 확인 |
인가(Authorization) | 사용자의 정보 제공 동의를 바탕으로, 사용자의 정보와 맥스버스 API 사용 접근 권한을 토큰의 형태로 발급 및 제공 |
토큰
PASSPORT 로그인을 통해 인증, 인가 과정이 끝난 사용자의 경우 토큰이 발급되는데 OAuth 2.0 의 규격에 맞게 Access Token, Refresh Token이 발급되며, OpenID Connect 프로토콜을 통해 사용자의 인증이 이루어지기 때문에 ID Token까지 총 3개의 토큰이 발급됩니다.
Access Token
맥스버스 API 호출에 사용되는 토큰입니다. 사용자의 권한 정보가 담겨있습니다. 만료시간은 30분입니다.
Access Token 페이로드
Name | Type | Description |
---|---|---|
exp | Integer | Access Token 만료 시간, UNIX Timestamp |
iat | Integer | Access Token 발급 시간, UNIX Timestamp |
auth_time | String | 사용자가 PASSPORT 로그인을 통해 인증을 완료한 시각, UNIX Timestamp |
jti | String | JWT 토큰의 unique identifier |
iss | String | Access Token을 발급한 인증기관의 정보 |
sub | String | 사용자의 고유 사용자 번호 |
aud | String | 클라이언트 ID |
typ | String | Access Token의 Type |
azp | String | 클라이언트 ID |
scope | String | 요청 받은 클라이언트 애플리케이션이 동의를 얻어 노출하는 스코프 집합 |
sid | String | 사용자 세션의 unique identifier |
app | String | 애플리케이션의 ID |
preferred_username | String | 사용자의 닉네임 (현재 이메일 주소) |
Refresh Token
로그아웃, 엑세스 토큰 재발급 시 사용되는 토큰입니다. 만료시간은 6시간입니다.
ID Token
사용자의 인증정보를 제공하는데 사용되는 토큰입니다. 만료시간은 Access Token 과 동일합니다.
ID Token 페이로드
Name | Type | Description |
---|---|---|
exp | Integer | ID Token 만료 시간, UNIX Timestamp |
iat | Integer | ID Token 발급 시간, UNIX Timestamp |
auth_time | String | 사용자가 PASSPORT 로그인을 통해 인증을 완료한 시각, UNIX Timestamp |
jti | String | JWT 토큰의 unique identifier |
iss | String | ID Token을 발급한 인증기관의 정보 |
aud | String | 클라이언트 ID |
sub | String | 사용자의 고유 사용자 번호 |
typ | String | ID Token의 Type |
azp | String | 클라이언트 ID |
sid | String | 사용자 세션의 unique identifier |
image | String | 사용자의 이미지 |
name | String | 사용자의 이름 |
preferred_username | String | 사용자의 닉네임 (현재 이메일 주소) |
String | 사용자의 이메일 주소 |
서비스 로그인 시퀀스 과정

Step 1. 인가 코드 요청
- 서비스 서버에서 인가 코드 요청을 합니다.
- PASSPORT 인증 서버는 사용자에게 ID, PW 로그인을 통한 인증을 요청합니다.
- 사용자가 로그인 정보를 입력한 뒤, 해당 서비스에 최초 로그인일 경우 PASSPORT 인증 서버는 사용자에게 인가를 위한 사용자 동의를 요청합니다.
- 사용자가 동의를 할 경우 혹은 이미 동의를 했을 경우, PASSPORT 인증 서버는 인가 코드 요청 시 전달받은 Redirect URI 로 인가코드를 발급하여 전달합니다.
Step 2. 토큰 요청
- 서비스 서버는 발급받은 인가 코드를 통해 토큰 발급을 요청합니다.
- PASSPORT 인증 서버는 토큰을 발급해서 토큰 정보를 응답합니다.