我是Azure功能应用的新手。只是为了简要说明我的要求和我面临的问题。我想与
沟通Microsoft.IdentityModel.Clients.ActiveDirectory通过我的用户凭据(azure帐户)并生成一个令牌,通过该令牌我可以刷新Power BI数据集。
现在作为我的Windows Azure功能的一部分, 请注意:我正在尝试在天蓝色门户功能(HttpTriggers)中编写代码片段,即沙箱。 由于windows功能应用支持.Net frmaework 4.6使用project.json安装nuget包,我已经安装了Microsoft.IdentityModel.Clients.ActiveDirectory
dll版本3.14.x(最新)到project.json。
然后我尝试使用下面的代码行
来获取令牌AuthenticationContext authContext = new AuthenticationContext(authorityUri);
string token = authContext.AcquireTokenAsync(resourceUri, clientID, new UserPasswordCredential(username, password)).Result.AccessToken;
(请注意:authorityUri = "https://login.windows.net/common/oauth2/authorize"; clientID="myclientid";resourceUri = "https://analysis.windows.net/powerbi/api"
)
(请注意:Microsoft.IdentityModel.Clients.ActiveDirectory dll v 3.x以后不支持AcquireToken函数,所以使用AcquireTokenAsync)
现在我在此行中收到错误" AADSTS50131:AccessPolicy不允许令牌发放。"。
当我通过我的WEB API函数调用它时,我能够生成令牌。
对此有任何帮助都非常重要。
提前致谢。