JSON Web トークンの付与ワークフロー

  • リリースバージョン: Zurich
  • 更新日 2026年03月12日
  • 所要時間:1分
  • このフローは、クライアントアプリケーションが、それ自体として、またはユーザーの代わりに、 ServiceNow リソースへの安全な無人アクセスを必要とする場合に使用します。

    始める前に

    必要なロール: oauth_admin、mi_admin、admin

    このタスクについて

    クライアント アプリケーションは、それが表すユーザーやシステムなどの ID 関連の要求を持つ署名済み JWT を生成します。クライアントアプリケーションは、JWT を ServiceNow インスタンスに送信してアクセストークンを要求します。
    • ユーザーの代理として行動する場合:
      トークンは、以前に認証されたユーザーを表します。これにより、ユーザーに認証情報や同意を求めることなく、安全でシームレスなアクセスが可能になります。 ServiceNow は、署名されたトークンからユーザーの ID を検証することで要求を信頼し、リアルタイムのユーザー操作の必要性を排除します。
    • それ自体として行動する場合:
      トークンは、クライアントアプリケーションを識別して認証します。共有シークレットを使用する代わりに、アプリケーションは秘密鍵を使用してトークンに署名します。これにより、クライアント認証情報の付与に代わる、より安全な代替手段が提供されます。
    図 : 1. JWT 権限許可ワークフロー
    JWT 権限許可ワークフロー

    手順

    1. クライアントアプリケーションは、秘密鍵で署名された JWT を使用して、トークン要求を ServiceNow に送信します。
    2. ServiceNow 対応する公開鍵を使用して JWT を検証します。
      トークン内の サブ (サブジェクト) クレームを sys_user レコードにマッピングします。
    3. ServiceNow JWT を検証し、アクセストークンを発行します。
    4. クライアントは、 ServiceNowへの API 要求にアクセストークンを含めます。
    5. ServiceNow はアクセストークンを検証し、適切な API 応答を返します。