gpt4 book ai didi

c# - 通过 AD Oauth 访问 Azure 服务管理 API 失败

转载 作者:行者123 更新时间:2023-12-03 03:16:04 25 4
gpt4 key购买 nike

我遇到了与此相同的问题 - Azure Service Management API authentication using Azure Active Directory Oauth场景略有不同。

我正在运行一个 headless 应用程序(使用 nunit 来运行集成测试)设置,就像 http://msdn.microsoft.com/en-us/library/ee460782.aspx 中一样。获取阶段部署 URL,该 URL 是动态的。

我可以调用生产 url 并运行测试,同时以 headless 方式使用 AD 验证请求,但不能使用服务管理 api。我已向该服务的服务管理 API 授予权限,如演练中所示。

此外,我通过客户端凭据调用获取 token :

result = context.AcquireToken(
"https://management.core.windows.net/",
"{clientId}",
clientCredential, // had client id and key
new Uri("{redirectUri}"));

获取未经授权:收到的 JWT token 发生安全 token 异常。

使用的获取部署 URL 位于此处 - http://msdn.microsoft.com/en-us/library/ee460804.aspx我仔细检查了订阅 ID、服务名称等。

尽管 token 看似有效,但有人对失败的原因有见解吗?

这是否已知与应用程序 key 一起使用?我还找不到一个例子。

最佳答案

请改用 AcquireToken(string resource, string clientId, UserCredential userCrential) 重载。这是函数designed对于 headless 应用程序。

由于服务管理 API 仅允许委派权限,因此您需要提供用户凭据(用户名和密码)而不是应用程序(客户端 ID 和 key )。

关于c# - 通过 AD Oauth 访问 Azure 服务管理 API 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26069606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com