读取其他用户时,Microsoft Graph api 403访问被拒绝

我用angular和nodejs创build了一个应用程序,我需要能够读取另一个用户的事件列表。 现在我试图使用“ https://graph.microsoft.com/v1.0/users/otherusername@companyurl.com/events ”这给了我403“访问被拒绝。检查凭据,然后再试一次。” 但是,如果我使用“ https://graph.microsoft.com/v1.0/users/myusername@companyurl.com/events ”它的作品(大多数人会期望)。 我的问题是,为什么当我使用Outlook时,我可以使用调度助手来查看“otherusername@companyurl.com”的事件,而不是一个pipe理员,但在我的应用程序,我不能看到他们的事件由于凭据?

我用来连接到微软graphicsAPI的库是https://github.com/AzureAD/azure-activedirectory-library-for-js

我在azure中设置的委派权限是

  • 查看用户的电子邮件地址
  • 用户login
  • 阅读用户联系人
  • 拥有对用户日历的完全访问权限
  • 阅读用户日历
  • 以用户身份发送邮件
  • 读取目录数据
  • 阅读所有用户的基本configuration文件
  • login并阅读用户configuration文件

应用程序权限(我理解这些需要pipe理员)

  • 阅读所有邮箱中的日历

图表api权限范围

任何帮助表示赞赏,谢谢。

Fugal – 这是devise。 您可以使用FindMeetingTimes API来安排与其他用户的会议。 这可以通过Calendar.Read权限来完成。 有关更多信息,请参阅http://graph.microsoft.io/en-us/docs/api-reference/beta/api/user_findmeetingtimes

对于使用/ events端点来查看其他用户的日历,您需要一个特殊的权限(类似Calendar.Read.Shared),我们仍然在添加。 一旦我们添加了这个function,您将可以使用/ Events访问另一个用户明确与您共享的日历。 但是如果你只想安排会议,FindMeetingTimes就足够了。