OAuth API 요청 매개변수
액세스 토큰 요청에서 사용하는 OAuth API 요청 매개변수에 대해 알아봅니다.
주:
OAuth API의 content-type은 application/x-www-form-urlencoded여야 합니다. application/json의 콘텐츠 유형으로 인해 지정되지 않은 오류가 발생합니다.
| 요청 매개변수 | 설명 |
|---|---|
| grant_type | [필수] 액세스 토큰에 대한 요청을 승인하는 자격 증명의 유형입니다. 이 매개 변수에는 다음 값 중 하나가 있어야 합니다.
|
| client_id | [필수] 액세스 토큰을 요청하는 클라이언트 애플리케이션의 자동 생성 고유 ID입니다. |
| client_secret | [필수] 인스턴스와 OAuth 애플리케이션이 서로의 통신을 승인하는 데 사용하는 공유 암호 문자열입니다. |
| username | 액세스 토큰 요청에 권한을 부여하는 사용자 계정 이름입니다. 이 매개변수는 암호grant_type 있는 액세스 토큰 요청에 필요합니다. |
| password | 액세스 토큰 요청에 권한을 부여하는 사용자 계정의 암호입니다. 이 매개변수는 암호grant_type 있는 액세스 토큰 요청에 필요합니다. |
| refresh_token | 액세스 토큰 요청에 권한을 부여하는 기존 새로 고침 토큰입니다. 이 매개변수는 grant_type 이 refresh_token인 액세스 토큰 요청에 필요합니다. |
사용자 자격 증명을 사용한 요청
인스턴스를 사용하려면 클라이언트에 처음 권한을 부여하거나 새 새로 고침 토큰 생성을 승인할 때 클라이언트가 사용자 로그인 자격 증명을 제공해야 합니다. 이 유형의 요청은 항상 두 개의 토큰을 반환합니다.
- 접근 토큰
- 새로 고침 토큰
인스턴스는 사용자가 활성 상태이고, 현재 잠겨 있지 않으며, 대화형 세션을 가지고 있는지 확인합니다. 이러한 조건 중 하나라도 false이면 인스턴스가 액세스 토큰을 생성하지 않습니다. 액세스 토큰의 만료 시간 내에 수행된 액세스 요청은 항상 현재 액세스 토큰을 반환합니다.
주:
이 유형의 권한 부여는 TLS 암호화를 사용하여 전송 중에 사용자 자격 증명을 보호합니다.
다음 예제에서는 사용자 자격 증명 집합(가독성을 높이기 위해 공백이 추가됨)을 사용하여 액세스 토큰을 요청하는 방법을 보여 줍니다.
$ curl -d"grant_type=password&client_id=be3aeb583ace210011c15b24a43e25d8
&client_secret=client_password
&username=admin&password=admin"
https://instancename.service-now.com/oauth_token.do새로 고침 토큰을 사용한 요청
인스턴스는 기존 새로 고침 토큰을 사용하여 새 액세스 토큰을 만들 수 있습니다. 이 유형의 요청은 액세스 토큰만 반환합니다. 인스턴스는 새 액세스 토큰을 생성하기 전에 새로 고침 토큰이 만료되지 않았는지 확인합니다. 새로 고침 토큰 만료 시간 내에 수행된 액세스 요청은 항상 현재 새로 고침 토큰을 반환합니다. 일반적으로 새로 고침 토큰을 전송하는 것이 사용자 자격 증명을 전송하는 것보다 더 안전합니다. 다음 예제에서는 기존 새로 고침 토큰으로 액세스 토큰을 요청하는 방법을 보여 줍니다(가독성을 높이기 위해 공백이 추가됨).
$ curl -d"grant_type=refresh_token&client_id=be3aeb583ace210011c15b24a43e25d8
&client_secret=client_password
&refresh_token=w599voG89897rGVDmdp12WA681r9E5948c1CJTPi8g4HGc4NWaz62k6k1K0FMxHW40H8yOO3Hoe"
https://instancename.service-now.com/oauth_token.do