客户端凭据访问令牌不在办公室365

时间:2018-04-10 07:05:08

标签: azure-active-directory microsoft-graph

我正在使用客户端凭据流来生成访问令牌。以下是请求。

Using client credentials flow

我收到了访问令牌,我用来调用Web API,如

https://graph.microsoft.com/v1.0/me/mailfolders/inbox/messages

以下是截图 Calling Web API

调用Web API会导致InvalidAuthenticationToken错误。

对此有任何解决方法。?

1 个答案:

答案 0 :(得分:1)

resource应设置为https://graph.microsoft.com

在屏幕截图中,resource设置为https://outlook.office.com,但您正在调用Microsoft Graph。由于您为不同的资源提供access_token,Microsoft Graph拒绝它。

您还需要确保在Azure门户中请求了正确的Microsoft Graph权限。例如,要拨打/mailFolders/inbox/messages,您需要Mail.ReadMail.ReadWrite的请求权限。

最后,您不能将/me与“客户端凭据”授予一起使用。 /me只是/users/{current-user-id}/的简写。由于客户端凭据不拥有当前用户,因此API不知道哪个用户me。您需要在路径中引用特定的user实体:

/v1.0/users/{userPrincipalName}/mailfolders/inbox/messages