繁体   English   中英

无法使用 OAuth 访问令牌访问 Microsoft Graph Api

[英]Not able to access Microsoft Graph Api using OAuth Access token

我正在尝试为我的 OneDrive Business 帐户访问 Microsoft Graph Api。 我在 Azure 目录中创建了一个应用程序。 我能够进行身份验证,我正在获取访问令牌,但是当尝试使用该访问令牌并使用此 api https://graph.microsoft.com/v1.0/me 时 我收到此错误:“访问令牌验证失败。无效的受众。” 我不知道我是否缺少访问 Graph APi 的任何权限?

根据解决 Microsoft Graph 授权错误 - Microsoft Graph | 微软文档

API 服务(如 Microsoft Graph)检查接收到的访问令牌中的 aud 声明(受众)是否与它自己期望的值匹配,如果不匹配,则会导致 403 Forbidden 错误。 导致此错误的一个常见错误是尝试使用为 Azure AD Graph API、Outlook API 或 SharePoint/OneDrive API 获取的令牌来调用 Microsoft Graph(反之亦然)。 确保您的应用获取令牌的resource (or scope) app is acquiring a token for matches the API that the app is calling.

正如您的错误消息所述,您的令牌受众无效,您在请求令牌时必须设置错误的 scope。请检查https://jwt.ms中评论的 aud 声明。 尝试在身份验证请求中将 scope 设置为https://graph.microsoft.com/.default并在 Microsoft apis> Microsoft graph 下授予delegatedapplication permissions ,并grant admin consent 等。 api 调用仅支持委托权限,因此您不能使用客户端凭据流获取令牌。 对于 /me 端点,用户需要登录,因此您需要使用 auth 代码流来获取访问令牌。 调用 /me 端点需要委派权限。

在此处输入图像描述

并且从中调用一个驱动器 api 还需要针对不同活动的其他额外权限

您可以使用Graph Explorer查看所需的权限,并通过资源管理器本身或通过门户授予管理员同意。

在此处输入图像描述

如果仍然错误,请将accesstokenacceptedversion更改为 2,如果它是 null 或 1,反之亦然。 然后再试一次。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM