从Microsoft Graph请求“ / joinedTeams”时出现“未经授权”错误

时间:2020-06-24 13:15:00

标签: azure microsoft-graph-api microsoft-teams

我正在设置一个应用程序,用于通过Microsoft Graph API修改Microsoft Teams帐户(团队/渠道),但是我无法从需要调用的所有端点中获得响应。 我遵循guide来创建具有应用程序权限并成功获取访问(和刷新)令牌的应用程序。

调用https://graph.microsoft.com/v1.0/users/<user guid>/joinedTeams endpoint会产生如下响应:

{
  "error": {
    "code": "Unauthorized",
    "message": "Unauthorized",
    "innerError": {
      "date": "2020-06-24T12:37:53",
      "request-id": <guid>
    }
  }
}
呼叫https://graph.microsoft.com/v1.0/users之类的端点时,

起作用as described。该应用似乎没有获得访问权限和/或许可,但是在注册后,它们会在azure门户企业应用程序页面的API权限中列出,并且访问令牌JWT包含指定的权限,{ 1}}对象。

来自JWT:

roles

我尝试使用"roles": [ "TeamSettings.ReadWrite.All", "User.ReadWrite.All", "Directory.ReadWrite.All", "Group.ReadWrite.All", "TeamMember.ReadWrite.All", "Team.ReadBasic.All", "GroupMember.ReadWrite.All", "Member.Read.Hidden" ] 权限以及Directory.ReadWrite.All端点的permissions page上列出的完整权限列表,它们都引发相同的错误。

奇怪的是,根据this,对于过期(或类似无效)的令牌,会给出 401-未经授权的响应,但是显然不是这种情况,因为我可以称呼其他具有该标记的端点。

我想念什么?

1 个答案:

答案 0 :(得分:0)

感谢@MikeOliver 当我注册团队时,它创建了另一个目录。只有第二个目录才具有Teams“许可证”(从Azure门户的“许可证”页面可见)。