Azure活动目录应用程序-无法访问MS图形邮件



我目前正在尝试将SharePoint网站与Microsoft Graph集成,以便在主页上向用户显示信息,包括来自Graph API的Outlook邮件,日历和任务信息。这是通过使用ADAL JS库(核心JS版本,而不是Angular JS版本)实现的。

当尝试检索用户的日历、任务、用户和组信息时,请求成功完成。但是,当尝试检索用户的邮件消息(使用/me/messages)端点时,请求返回403错误,并包含以下消息:

"{
  "error": {
    "code": "ErrorAccessDenied",
    "message": "Access is denied. Check credentials and try again.",
    "innerError": {
      "request-id": "GUID",
      "date": "2016-10-26T07:14:50"
    }
  }
}"

这让我检查返回的JSON Web令牌,我注意到,尽管Azure AD应用程序具有正确的授权权限来读取用户的邮件,但请求的范围似乎是不正确的:

  "scp": "Calendars.Read Contacts.Read Directory.Read.All email profile Tasks.Read User.Read",

可以看到,没有Mail。阅读,它有"电子邮件"(和个人资料)。

我似乎找不到任何地方来指定,更改或更新web令牌中包含的范围。对应用程序所需权限的任何更改似乎对范围字符串没有任何影响。

任何帮助都将是非常感激的。

很多谢谢,杰森

email作用域只授予您访问用户的主要电子邮件地址的权限。要访问他们的收件箱,你需要Mail.Read。要获得此范围,您需要更新Azure门户上的应用程序注册并请求"阅读用户邮件"。

相关内容

  • 没有找到相关文章

最新更新