Entra ID スポークアクションの実行中に 401 Unauthorized エラーが発生する。Summary<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } この問題は、Microsoft Entra ID で付与されたアクセス許可が不十分であるか、OAuth セットアップで構成された認証の種類と一致していない場合によく発生します。(Microsoft Entra ID スポーク (旧称 Microsoft Azure Active Directory スポーク)) ServiceNow で Microsoft Entra ID を OAuth プロバイダーとして構成する場合は、アプリ登録で付与された権限タイプが、使用されている権限許可タイプと一致することを確認することが重要です。 1.認証コードを使用している場合権限許可タイプ Entra ID アプリ登録で API アクセス許可に委任されたアクセス許可をアサインする必要があります。理由: 認証コード権限許可の種類は、アプリケーションがサインインしているユーザーの代わりに動作するシナリオを表します。この場合、アクセストークンはユーザーコンテキストに対して発行され、Entra ID はそのユーザーから権限が 委任 されることを期待します。例:スポークアクションが Microsoft Graph にアクセスしようとすると (ユーザーやグループの読み取りなど)、Entra ID は、サインインしているユーザーがこれらの委任されたアクセス許可に同意したかどうかを検証します。 アプリケーション権限が [委任済み] ではなく誤って付与された場合、トークンがユーザーコンテキスト操作に対して有効ではないため、Entra ID は有効なユーザーの同意を見つけることができず、トークンがユーザーコンテキスト操作に対して有効ではないため、401 Unauthorized エラーが返されます。 2.クライアント認証情報権限許可タイプを使用している場合 Entra ID アプリ登録で API アクセス許可にアプリケーションアクセス許可をアサインする必要があります。理由:クライアント認証情報権限許可タイプは、アプリケーションがユーザーの代わりにではなく、それ自体として動作するときに使用されます。トークンはアプリケーションの ID を表すため、Entra ID にはアドミニストレーターによって明示的に付与された アプリケーション権限 が必要です。