ワークロード ID の継続的アクセス評価 (CAE) は、条件付きアクセスの場所とリスク ポリシーをリアルタイムで適用することで、組織のセキュリティを向上させます。 CAE は、ワークロード ID にトークン失効イベントを即座に適用し、侵害されたサービス プリンシパルがリソースにアクセスするのを防ぐのに役立ちます。
前提条件
- サービス プリンシパルをスコープとする条件付きアクセス ポリシーを作成または変更するには、ワークロード ID Premium ライセンスが必要です。 詳細については、「 ワークロード ID の条件付きアクセス」を参照してください。
- 条件付きアクセス ポリシーを作成または変更するには、少なくとも 条件付きアクセス管理者としてサインインします。
- ワークロード アイデンティティの CAE は、テナントに登録されているシングルテナントのサービス プリンシパルをサポートします。 サード パーティの SaaS アプリとマルチテナント アプリは対象外です。
- マネージド ID は、現在、ワークロード ID に対して CAE でサポートされていません。
CAE がワークロード ID に対して機能するしくみ
ワークロード ID の CAE は、継続的アクセス評価モデルをサービス プリンシパルに拡張します。 サービス プリンシパルが CAE にオプトインすると、次のフローが適用されます。
- サービス プリンシパルは、サポートされているリソース プロバイダーの Microsoft Entra ID からアクセス トークンを要求し、トークン要求の要求パラメーターで
cp1クライアント機能を宣言します。 - Microsoft Entra ID は、適用可能な条件付きアクセス ポリシーを評価し、CAE 対応のアクセス トークンを発行します。 ワークロード ID の CAE 対応トークンは、有効期間が最大 24 時間の有効期間のトークン (LLT) です。
- サービス プリンシパルは、リソース プロバイダー (Microsoft Graph) にトークンを提示します。
- リソース プロバイダーは、Microsoft Entra ID から同期された失効イベントと条件付きアクセス ポリシーの変更に対してトークンを評価します。
- 失効イベントが発生した場合 (サービス プリンシパルの無効化や高リスク検出など)、リソース プロバイダーはトークンを拒否し、要求チャレンジを含む
401応答を返します。 - CAE 対応クライアントは、新しいトークンを発行する前にすべての条件を再評価する Microsoft Entra ID に新しいトークンを要求することで、要求チャレンジを処理します。
ワークロード ID の CAE トークンは有効期間が長いため (最大 24 時間)、継続的な評価によってセキュリティを維持しながら、頻繁なトークン要求の必要性を軽減します。
Note
上記のフローは、「 継続的アクセスの評価」で説明されている一般的な CAE モデルに従います。 ワークロード ID の動作はこのモデルに合わせて調整されますが、特定の実装の詳細は異なる場合があります。
要求チャレンジのしくみの詳細については、「要求チャレンジ 、要求要求、およびクライアント機能」を参照してください。
サポートされているシナリオ
次のセクションでは、CAE がワークロード ID に対してサポートするリソース プロバイダー、ID、イベント、およびポリシーについて説明します。
リソース プロバイダー
ワークロード ID の CAE は、リソース プロバイダーとして Microsoft Graph に送信されたアクセス要求でのみサポートされます。
サポートされている ID
基幹業務 (LOB) アプリケーションのサービス プリンシパルがサポートされています。 次の制約が適用されます。
- テナントに登録されているシングルテナント サービス プリンシパルのみがサポートされます。
- サード パーティの SaaS アプリとマルチテナント アプリは対象外です。
- マネージド ID はサポートされていません。
失効イベント
次の失効イベントがサポートされています。
- サービス プリンシパルの無効化 - 管理者がテナントのサービス プリンシパルを無効にします。
- サービス プリンシパルの削除 - 管理者がテナントからサービス プリンシパルを削除します。
- 高いサービス プリンシパル リスク — Microsoft Entra ID Protection は、サービス プリンシパルの高リスクを検出します。 詳細については、「 Microsoft Entra ID Protection を使用したワークロード ID のセキュリティ保護」を参照してください。
条件付きアクセス ポリシー
ワークロード ID の CAE では、場所とリスクを対象とする条件付きアクセス ポリシーがサポートされています。 これらのポリシーを作成するには、「 ワークロード ID の条件付きアクセス」の詳細なチュートリアルを参照してください。
アプリケーションを有効にする
開発者は、トークンを要求する際に cp1 クライアント機能を宣言することで、ワークロード ID に対して CAE を利用することを選択できます。
cp1宣言すると、クライアント アプリケーションが要求チャレンジを処理できることを Microsoft Entra ID に通知します。 Microsoft Graph (ワークロード ID CAE で唯一サポートされているリソース プロバイダー) は、この機能を宣言するクライアントにのみ要求チャレンジを送信します。
CAE 機能を宣言するには、トークン要求に次の要求パラメーターを含めます。
Claims: {"access_token":{"xms_cc":{"values":["cp1"]}}}
cp1機能を宣言する方法は、使用する認証ライブラリによって異なります。 .NET、Python、JavaScript、およびその他の言語の詳細なコード例については、次を参照してください。
Important
アプリケーションは要求チャレンジを受信せず、 cp1 機能を明示的に宣言しない限り CAE トークンを受け取りません。 詳細については、「 クライアント機能」を参照してください。
Note
cp1の宣言は、クライアント側のアクションです。 また、API 実装者 (リソース アプリ) は、アプリケーション マニフェストでxms_ccとしてを要求して、呼び出し元のクライアントが要求チャレンジをサポートしているかどうかを検出できます。 詳細については、「 アクセス トークンでのxms_cc要求の受信」を参照してください。
無効にする
アプリケーション レベルで CAE をオプトアウトするには、トークン要求の要求パラメーターで cp1 機能を送信しないでください。
既知の制限
ワークロード ID の CAE を実装する前に、次の制限事項を確認してください。
- Microsoft Graph のみ。 ワークロード ID の CAE は、Microsoft Graph へのアクセス要求でのみサポートされます。 他のリソース プロバイダーは現在サポートされていません。
- マネージド ID はサポートされていません。 現時点では、CAE はマネージド ID をサポートしていません。
- シングルテナント サービス プリンシパルのみ。 テナントに登録されているシングルテナント サービス プリンシパルのみがサポートされます。 サード パーティの SaaS アプリとマルチテナント アプリは対象外です。
- CAE では、場所とリスクのポリシーが適用されます。 ワークロード ID の CAE では、場所とリスクをリアルタイムで対象とする条件付きアクセス ポリシーが適用されます。 ワークロード ID ( 認証コンテキストを含む) でサポートされる条件付きアクセス条件の完全な一覧については、「 ワークロード ID の条件付きアクセス」を参照してください。
- グループベースのポリシー割り当ては適用されません。 サービス プリンシパルを含むグループに割り当てられた条件付きアクセス ポリシーは、そのサービス プリンシパルには適用されません。 ポリシーは、ワークロード ID としてサービス プリンシパルに直接割り当てる必要があります。 詳細については、「 ワークロード ID の条件付きアクセス」を参照してください。
ワークロード ID の CAE を監視する
管理者は、Microsoft Entra サインイン ログを使用して、ワークロード ID の CAE アクティビティを監視できます。
- Microsoft Entra 管理センターに、少なくともセキュリティ閲覧者としてサインインします。
- Entra ID>監視とヘルス>サインインログ>サービス プリンシパル サインインに移動します。フィルターを使用して手順を簡素化します。
- エントリを選択すると、アクティビティの詳細が表示されます。 [継続的アクセス評価] フィールドには、特定のサインイン試行に対して CAE トークンが発行されたかどうかを示します。
継続的アクセス評価分析情報ブックや IP 不一致分析など、一般的な CAE 監視ツールについては、「継続的アクセス評価の監視とトラブルシューティング」を参照してください。
トラブルシューティング
CAE 対応リソースがワークロード ID トークンを拒否した場合、アプリケーションは 401 要求チャレンジを処理し、Microsoft Entra ID に新しいトークンを要求する必要があります。 Microsoft Entra ID は、新しいトークンを発行するかどうかを決定する前に、条件を再評価します。 調査するには、次の手順に従います。
サービス プリンシパルのアクセスが予期せずブロックされました。
- [サービス プリンシパルのサインイン] でサインイン ログを確認します。継続的アクセス評価フィールドが CAE トークンが関係したことを示すエントリを探します。
- 失効イベントが発生したかどうかを確認します。 Microsoft Entra ID Protection によって、サービス プリンシパルが無効になっているか、削除されたか、高リスクとしてフラグが設定されているかを確認します。
- 該当する条件付きアクセス ポリシーを確認して、サービス プリンシパルのソース IP が許可されている 名前付き場所に含まれていることを確認します。
サービス プリンシパルが CAE トークンを受信していない:
- アプリケーションで、トークン要求の要求パラメーターで
cp1機能が宣言されていることを確認します。 - アプリケーションのターゲットがリソース プロバイダーとして Microsoft Graph であることを確認します。 他のリソース プロバイダーは、現在 CAE ではサポートされていません。
- サービス プリンシパルがテナントに登録されているシングルテナント LOB アプリケーションであることを確認します。
Microsoft Entra ID とリソース プロバイダーの間の IP アドレスの不一致:
- この状況は、分割トンネル ネットワークまたはプロキシ構成で発生する可能性があります。 IP アドレスが一致しない場合、Microsoft Entra ID は 1 時間の CAE トークンを発行し、その期間中にクライアントの場所の変更を強制しません。 詳細については、「 継続的アクセス評価の監視とトラブルシューティング」を参照してください。
CAE のトラブルシューティングの詳細については、 継続的アクセス評価の監視とトラブルシューティングを参照してください。