[英]Unable to access Microsoft Graph API after getting OAuth access_token
[英]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 下授予delegated
和application permissions
,并grant admin consent
。 等。 api 调用仅支持委托权限,因此您不能使用客户端凭据流获取令牌。 对于 /me 端点,用户需要登录,因此您需要使用 auth 代码流来获取访问令牌。 调用 /me 端点需要委派权限。
并且从中调用一个驱动器 api 还需要针对不同活动的其他额外权限。
您可以使用Graph Explorer查看所需的权限,并通过资源管理器本身或通过门户授予管理员同意。
如果仍然错误,请将accesstokenacceptedversion更改为 2,如果它是 null 或 1,反之亦然。 然后再试一次。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.