【问题标题】:Microsoft graph people\me return empty list of usersMicrosoft graph people\me 返回空的用户列表
【发布时间】:2019-05-16 12:49:28
【问题描述】:

我在 Office 365 试用版中创建了一个帐户。我已在 Azure 上添加了具有权限的新应用注册:

BookingsAppointment.ReadWrite.All 
Calendars.ReadWrite
Contacts.ReadWrite 
EWS.AccessAsUser.All
Mail.ReadWrite 
Mail.Send 
People.Read 
User.Read 
User.ReadBasic.All

当我调用https://graph.microsoft.com/v1.0/me/people 作为创建办公室帐户的用户时,将获得用户和资源的完整列表。

当我作为具有管理员权限的管理员创建的用户调用时,我得到一个空列表。 我在管理员用户和创建的管理员用户上调用权限链接:

https://login.microsoftonline.com/{}/oauth2/v2.0/authorize?client_id={}&response_type=code&scope=BookingsAppointment.ReadWrite.All%20Calendars.ReadWrite%20Contacts.ReadWrite%20EWS.AccessAsUser.All%20Mail.ReadWrite%20Mail.Send%20People.Read%20People.Read%20User.Read%20User.ReadBasic.All

怎么了?

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('fb6b188c-8698-4a03-9da4-82b7479c4625')/people",
    "value": []
}

【问题讨论】:

    标签: office365 microsoft-graph-api


    【解决方案1】:

    对于能够使用委托授权访问其他用户联系人文件夹的用户(在您的情况下称为管理员)需要 Contacts.Read.Shared 或 Contacts.ReadWrite.Shared 参见https://docs.microsoft.com/en-us/graph/outlook-get-shared-contacts-folders

    另一件事是管理员权限对邮箱访问没有意义,例如邮箱的委托访问都需要通过 Add-MailboxPermission https://docs.microsoft.com/en-us/exchange/recipients/mailbox-permissions?view=exchserver-2019 或通过 Outlook 委托来特别授予。 (例如,如果您可以通过 OWA 或 Outlook 访问目标邮箱,则您的 Exchange 权限很好,但只是作为租户管理员就可以访问邮箱)。您的另一个选择是,如果您尝试创建一个将访问租户中所有邮箱的应用程序,请查看仅应用程序令牌https://docs.microsoft.com/en-us/azure/active-directory/develop/scenario-daemon-app-registration

    【讨论】:

    • 谢谢,你能不能告诉我,在添加了一个新用户并且一切都正确之后,办公室需要几个小时来同步数据吗?有时,例如,几个小时后,他就可以开始正常工作了。
    • 是的,后端 Active Directory 服务有一些同步,因此例如对邮箱权限进行更改通常需要 15 分钟才能生效,但我发现它可以需要更长的时间。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-02
    • 2015-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-01
    • 1970-01-01
    相关资源
    最近更新 更多