Microsoft が提供する以下のドキュメントに従って、両方のアプリを登録し、クライアント資格情報を使用して OAuth 2.0 サービスをセットアップし、「validate-jwt」インバウンド ポリシーを追加しました。郵便配達員がベアラー トークンを生成し、トークンを渡す APIM インスタンスの下でバックエンド API を呼び出してテストしました。それは正常に動作します。
https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-protect-backend-with-aad
しかし、Apim だけでなく、バックエンド API も保護し、同じトークンをバックエンド API に渡したいと考えています。ここでいくつか質問があります -
- APIM は同じベアラー トークンをバックエンド API に自動的に転送しますか、それともポリシーを構成する必要がありますか?
- 存在する場合、トレース ログを確認するにはどうすればよいですか? また、バックエンド API コードで同じトークンを承認するにはどうすればよいですか?
これが私の「validate-jwt」ポリシーです-
<inbound>
<validate-jwt header-name="Authorization" failed-validation-httpcode="401" failed-validation-error-message="Unauthorized. Access token is missing or invalid.">
<openid-config url="https://login.microsoftonline.com/{AAD Tenant ID}/v2.0/.well-known/openid-configuration" />
<audiences>
<audience>{App Id of backend App}</audience>
</audiences>
</validate-jwt>
<base />
</inbound>
助けてください。