고객사에서는 "그림 1 NAVER WORKS와 고객사 간 OAuth 2.0 기반 SSO"의 9~10 단계와 "그림 2 OAuth 2.0 기반 API 인증"의 7~8 단계에 해당하는 로직을 구현하여 NAVER WORKS에서 사용할 수 있도록 API로 제공한다. 고객사 SSO 시스템에서 Access Token을 검증한 후 사용자 정보를 반환한다.
참고
- 이때 반환하는 사용자 정보는 Developer Console의 조직연동의 "구성원 External Key Mapping"에서 구성원별로 매핑한 External Key와 동일한 값이어야 한다.
NAVER WORKS의 인프라 보안 정책에 따라 80 혹은 443 포트만 사용할 수 있다.
제작한 Request URL은 Developer Console의 SSO > WORKS as SP설정에서 User info return API에 등록한다.

그림 14 OAuth 2.0 기반 사용자 정보 API 등록
POST
참고
- API 통신 시 connection timeout은 1초, read timeout은 3초이다.
| 파라미터 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| client_id | String | Y | Developer Console에서 등록한 client id값 |
| client_secret | String | Y | Developer Console에서 등록한 client secret값 |
| access_token | String | Y | Access Token |
응답 형식은 JSON이다.
| 속성 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| user_id | String | Y(성공 시) | 구성원을 식별할 수 있는 ID 로그인한 사용자의 User Key (External Key 또는 NAVER WORKS Account) |
| error | String | Y(실패 시) | 실패 시 반환하는 오류 코드 |
| error_description | String | Y(실패 시) | 실패 시 반환하는 오류 설명 |
| 코드 | 메시지 | 설명 |
|---|---|---|
| 101 | access_denied | 인가된 클라이언트로부터의 요청이 아님 |
| 201 | invalid_request | 필수 Request가 누락되었거나, 데이터 형식에 맞지 않음 |
| 301 | unauthorized_client | client id와 secret으로 검증 실패 |
| 303 | invalid_access | Access Token 검증 실패 |