gpt4 book ai didi

.net - 我们如何使用 AzureServiceTokenProvider 获取受 Azure AD 保护的自定义 api 的 AccessToken?

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

我正在尝试获取使用 AAD 保护的 webapi 的访问 token 。我不想设置范围等,只是为了进行身份验证

我已经尝试过传递资源名称

tokenProvider.GetAccessTokenAsync("http://testapi.azurewebsites.net/").Result;

var client = new HttpClient();

var tokenProvider = new AzureServiceTokenProvider();
var accessToken=tokenProvider.GetAccessTokenAsync("http://testapi.azurewebsites.net");
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);

最佳答案

我在这里写了一篇关于该主题的整篇文章:https://joonasw.net/view/calling-your-apis-with-aad-msi-using-app-permissions .

您必须首先在 API 中设置至少一个应用程序权限。然后为托管身份/开发环境客户端应用程序分配该应用程序权限。

获取 token 时,您使用应用程序 ID URI 或 API 的客户端 ID 作为资源。如果您在开发环境中运行应用程序,则需要通过 token 提供程序连接字符串使用客户端 ID + key 或客户端 ID + 证书。

关于.net - 我们如何使用 AzureServiceTokenProvider 获取受 Azure AD 保护的自定义 api 的 AccessToken?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58109263/

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