0

我正在开发一个 Sharepoint 应用程序。对于我的应用程序,我必须使用 Microsoft 图形端点从 Azure AD 获取我的详细信息。我已经使用/token端点和client_credentials授权类型生成了访问令牌。当我将响应中收到的令牌与图形/users端点一起使用时,我收到一个未经授权的错误,如下图所示:

在此处输入图像描述

在 Azure 门户上,所有权限都授予 microsoft graph API。是否缺少任何配置?我该如何解决这个未经授权的错误?

4

2 回答 2

0

没有用 v2.0 端点测试,如果可以使用 v1.0 端点,您可以参考步骤。

1.导航到Azure Active Directory门户中的-> App registrations-> New application registration,更多详细信息请参见此链接

2.进入AD App -> Keys-> 为AD App生成key,复制key值。

3.然后转到Required permissions-> Add-> 选择 -> 中的and ,Microsoft Graph注意 不要忘记单击按钮。Read all users' full profilesAPPLICATION PERMISSIONSSaveGrant permissions

在此处输入图像描述

4.我在postman中测试,具体的body是我们需要得到的access_tokenclient_idApplication IDAD App的,client_secretkey vaule你复制的,grant_typeclient_credentialsresourcehttps://graph.microsoft.com/

样本:

POST https://login.microsoftonline.com/<Tenant ID>/oauth2/token?api-version=1.0

在此处输入图像描述

5.使用access_token调用MS Graph API,在我的示例中,我调用了List usersapi,它工作正常。

在此处输入图像描述

于 2019-01-07T08:46:37.880 回答
-1

我认为您在令牌中缺少使用“用户”端点的正确范围。可能的范围是:

  • User.ReadBasic.All
  • 用户读
  • 用户读写
  • 用户阅读全部
  • User.ReadWrite.All

有关更多详细信息,请查看此处

于 2019-01-07T07:29:27.157 回答