gpt4 book ai didi

azure - 通过 Web 代理获取 Azure 访问 token

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

我们正在使用 Microsoft.IdentityModel.Clients.ActiveDirectory API 从 Azure AD 获取访问 token 。

我们要求 API 调用应通过 Web 代理。我们找不到任何相关的示例代码。

是否有任何选项可以实现此要求。请找到所使用的代码片段。

string accessToken = string.Empty;
AuthenticationContext authContext = new AuthenticationContext(string.Format(authority, subscription.TentantId));
var clientCredential = new ClientCredential(subscription.ClientId, subscription.SecertKey);
var result = authContext.AcquireToken(resource, clientCredential);
accessToken = result.AccessToken;
return accessToken;

最佳答案

恐怕这个库不支持 IWebProxy 对象的设置 - 我找不到方法。但是似乎有两种解决方案:

1) 您可以设置全局代理,但这是推荐做法。见下文:

WebRequest.DefaultWebProxy = new WebProxy("10.0.0.1:1234");

2) 您可以通过 REST api 调用请求 token 并手动为您的 HttpRequest 设置代理

POST "https://login.microsoftonline.com/{tenantName}/oauth2/token"

在某些情况下这可能会很棘手(jwt 客户端断言类型等..)

请参阅此示例:https://github.com/mattleib/o365api-as-apponly-webapp/blob/master/AccessMailboxAsApp/AccessMailboxAsApp/Controllers/HomeController.cs#L558

关于azure - 通过 Web 代理获取 Azure 访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38250977/

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