繁体   English   中英

Azure Active Directory Oauth 2.0 客户端凭证流与 API 管理访问令牌问题

[英]Azure Active Directory Oauth 2.0 Client Credentials Flow with API Management Access Token issue

我一直在努力让我的 Azure Active Directory Oauth 2.0 Client Credentials Flow 与 API Management 一起工作。 但我也通过 postman 获得了身份验证。 但作为回报,我没有得到任何访问令牌,只是一堆 HTML。我该如何解决这个问题? 应用程序的设置完全按照文档,包括 JWT 策略的验证。

基本上,我希望我的客户端应用程序使用 Oauth 2.o 连接我的 azure API,而无需使用提供的客户端 ID/秘密。 我正在尝试使用 API 管理控制台开箱即用的 ECHO API 进行设置。

谢谢

Postman 访问令牌错误屏幕

要将应用程序权限用于您自己的 API(与 Microsoft Graph 相对),您必须首先通过在 Azure 门户中的 API 应用注册中定义范围来公开API。 然后,通过在客户端应用程序的应用程序注册中选择这些权限来配置对 API的访问。 如果您没有在 API 的应用程序注册中公开任何范围,您将无法在 Azure 门户中的客户端应用程序的应用程序注册中指定对该 API 的应用程序权限。

在此处输入图像描述

例如,如果我发送了自定义名称为 scope 的参数,如https://testwebapp.in/.default ,但没有配置与 Azure AD 中的应用程序 ID URI 相同,那么这是一种预期的行为,您将收到错误 AADSTS500011。

请求中的scope参数应该是你想要的资源的资源标识(application ID URI),加上.default后缀。 对于 Microsoft Graph 示例,该值为https://graph.microsoft.com/.default 此值告诉 Microsoft 标识平台,在你为应用配置的所有直接应用程序权限中,终结点应为与你要使用的资源关联的权限颁发令牌。

参考: https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow#application-permissions

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM