首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure无效AccessToken

Azure无效AccessToken
EN

Stack Overflow用户
提问于 2016-11-09 00:00:03
回答 1查看 5.9K关注 0票数 3

我试图使用Microsoft.Azure.Management.Resources库来管理一些Azure资源。我在Azure注册了应用程序,我给了它所有的许可。我拿了它的ApplicationId和TennantId + SubscriptionId,然后试着用这样的方式来讨好AccessToken:

代码语言:javascript
复制
var clientCredential = new ClientCredential(_model.DeploymentDetails.CliendId, _model.DeploymentDetails.ClientSecret);    
var context = new AuthenticationContext("https://login.windows.net/"+model.DeploymentDetails.TennantId);
_accessToken = context.AcquireTokenAsync("https://management.azure.com/", clientCredential).Result.AccessToken;
_resourceManagementClient =  new ResourceManagementClient(new TokenCloudCredentials(_model.DeploymentDetails.SubscriptionId,_accessToken));

我得到了一些AccessToken。但当我试着像这样使用它时:

代码语言:javascript
复制
var x = _resourceManagementClient.ResourceGroups.List(...);

我知道这个错误:

附加信息: InvalidAuthenticationToken:接收到的访问令牌无效:至少应该有一个声明“puid”或“altsecid”或“oid”。如果您作为应用程序访问,请确保在租户中正确地创建了服务主体。

有什么想法吗?

非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-09 09:57:25

据我所知,实现ARM API的Microsoft.Azure.Management.Resources.dll。我们需要将应用程序分配给角色,然后我们可以使用相同的令牌。有关如何将应用程序分配给角色的更多信息,请参阅文章 .This 博客,还有获取AceessToken的更多详细步骤。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40498446

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档