Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
访问所有用户';s邮箱通过Office 365 REST API_Api_Rest_Office365 - Fatal编程技术网

访问所有用户';s邮箱通过Office 365 REST API

访问所有用户';s邮箱通过Office 365 REST API,api,rest,office365,Api,Rest,Office365,我正在试用Office 365 Rest API 我已向Azure AD注册了应用程序 它具有以下权限集:Exchange:访问所有用户的邮箱、完全控制用户的日历、完全控制用户的联系人、完全控制用户的邮箱 我已经使用管理员授权生成了具有全局管理员权限的访问令牌 已发送以下请求“”,该请求产生了正确的结果,为我提供了当前管理员邮箱中的所有邮件 已发送以下请求“{其他用户的电子邮件}/消息”。这导致了以下错误 “u'error':{u'message':u'Access被拒绝。请检查凭据并重试。“

我正在试用Office 365 Rest API

  • 我已向Azure AD注册了应用程序
  • 它具有以下权限集:Exchange:访问所有用户的邮箱、完全控制用户的日历、完全控制用户的联系人、完全控制用户的邮箱
  • 我已经使用管理员授权生成了具有全局管理员权限的访问令牌
  • 已发送以下请求“”,该请求产生了正确的结果,为我提供了当前管理员邮箱中的所有邮件
  • 已发送以下请求“{其他用户的电子邮件}/消息”。这导致了以下错误

    “u'error':{u'message':u'Access被拒绝。请检查凭据并重试。“,u'code':u'ErrorAccessDenied'}”

请让我知道,如果上述步骤是错误的

如果他们错了,有没有办法从另一个用户的邮箱获取电子邮件,因为我有管理员凭据


谢谢。

对于您的场景,您需要使用本文所述的服务帐户,应用程序将能够拨打电话与该租户中的任何邮箱进行交互。您使用其他用户邮箱的请求失败的原因是,仅当应用和用户具有访问其他用户邮箱的权限时,请求才会被批准。在您的情况下,管理员有权访问其他用户的邮箱。但是,假设您使用OAuth代码流来获取OAuth令牌,则该应用程序仅对经过身份验证的用户的邮箱具有权限


另外,RESTAPI不需要“访问所有用户的邮箱”权限,因为它们用于使用ExchangeWeb服务(EWS)SOAP API

看来你对EWS感兴趣。有关更多信息,请参阅。请特别注意代码示例。