クライアント認証情報ワークフローを使用してクライアントアプリケーションを認証します。クライアント認証情報権限許可ワークフローは、バックエンドサービスまたはシステム統合によって、ユーザーの関与なしに ServiceNow® API にアクセスするために使用されます。
始める前に
必要なロール: oauth_admin、mi_admin、admin
このタスクについて
このワークフローでは、クライアントアプリケーション (バックエンドサービスまたはシステム統合) が、ユーザーの操作なしでクライアント認証情報を使用して ServiceNow で直接認証する方法について説明します。アプリケーションは、クライアント ID とクライアントシークレットを使用してアクセストークンを要求し、トークンを発行する前に ServiceNow 検証します。その後、クライアントはこのトークンを使用して ServiceNow API にアクセスします。 ServiceNow 、適切な応答を返す前に、各要求を検証します。
図 : 1. クライアント認証情報権限許可ワークフロー
手順
-
クライアントアプリケーションは、 次のパラメーターを使用して ServiceNow エンドポイントに対してトークン要求を行います。
Method: POST
Endpoint: https://<servicenow_base_url>/oauth_token.do
表 : 1. トークン要求パラメーター
| パラメーター |
必須 |
説明 |
grant_type |
はい |
OAuth 2.0 権限許可タイプ。 例: client_credentials |
client_id |
はい |
クライアントアプリケーションの一意の識別子。 例:YOUR_CLIENT_ID |
client_secret |
はい |
クライアント ID に関連付けられたシークレット。 例:YOUR_CLIENT_SECRET |
スコープ |
オプション |
アクセストークンに対して要求された権限。 例: incident_read incident_write |
-
ServiceNow は認証情報を検証し、アクセストークンを返します。
-
アクセストークンを使用して API 要求を行います。
各 API 要求の 認証 ヘッダーにアクセストークンを含めます。
Method: POST
Endpoint: https://<servicenow_base_url>/api/now/incident
Authorization: Bearer YOUR_ACCESS_TOKEN
-
ServiceNow トークンを検証し、適切な API 応答を返します。
注: クライアント認証情報権限許可ワークフローは、信頼できるサーバー側アプリケーションでのみ使用してください。client_secretを安全にメンテナンスしてください。ブラウザーやモバイルアプリなどのクライアント側環境で client_secret を使用しないようにします。