我有一个asp.net核心应用程序,该应用程序通过我公司的Office 365 AAD对用户进行身份验证。
我已请求此委派权限:User.Read.All,Calendars.ReadWrite.Shared
我使用代表工作流程在图api上进行身份验证。
在Outlook Web界面中,我可以看到我的日历,S日历和E日历
如果我运行此图形查询:
https://graph.microsoft.com/v1.0/users/
我有三个用户,一切正常!
现在,对于每个用户,如果我运行此查询:
https://graph.microsoft.com/v1.0/users/{id}
这对所有三个用户都很好
https://graph.microsoft.com/v1.0/users/{id}/calendars
运行此查询仅对我有用,对于其他两个用户,使用默认的Office 365配置,它将返回404-找不到,并显示错误:
{
"error": {
"code": "ErrorItemNotFound",
"message": "The specified object was not found in the store.",
"innerError": {
"request-id": "00000000-0000-0000-0000-000000000000",
"date": "2020-03-12T17:46:58"
}
}
}
现在,如果我让我的一个用户向我授予他的日历的完全访问权限,此查询将起作用。
所以,我的问题是为什么我可以在Outlook Web界面中看到所有三个日历,为什么不能通过图形API看到它?