我终于让我的应用程序通过Azure应用服务/移动应用程序使用Azure AD身份验证。
我现在正在使用Unified API(Microsoft.Graph)来访问某些用户文件。
我希望有一种方法可以使用我已经从移动服务中检索到的令牌,但它似乎要求用户再次登录,但此刻并不是真正的问题。
问题在于尝试进行身份验证时:
private static async Task<string> TryTokenHelperAsync(AuthenticationContext context, string resourceId)
{
AuthenticationContext authenticationContext =
new AuthenticationContext("https://login.microsoftonline.com/common", false);
AuthenticationResult userAuthnResult =
await authenticationContext.AcquireTokenAsync(
resourceId,
ClientID,
redirectUri,
PromptBehavior.Always
);
var TokenForUser = userAuthnResult.AccessToken;
return TokenForUser;
}
AuthenticationResult返回以下属性: 错误:“authentication_failed” ErrorMessage:“Stream不支持搜索。” 状态:“Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationStatus.ClientError”
有什么想法吗?
答案 0 :(得分:1)
您需要更新应用注册并选择应用所需的权限范围,并获取资源= https://graph.microsoft.com的令牌,以便能够使用该令牌来调用Office365统一API。 更多信息:https://msdn.microsoft.com/en-us/office/office365/howto/get-started-with-office-365-unified-api