Azure广告-获取用户';s配置文件照片,OAUTH访问失败

Azure广告-获取用户';s配置文件照片,OAUTH访问失败,azure,azure-active-directory,Azure,Azure Active Directory,我正在尝试在使用EWS连接到Office 365的电子邮件应用程序的上下文中访问登录用户的个人资料照片 应用程序已在portal.azure.com上注册,并具有以下所需权限: Office 365 Exchange Online->通过Exchange Web服务以登录用户身份访问邮箱 Windows Azure Active Directory->登录并读取用户配置文件 EWS部分工作正常,我可以登录用户,获取访问和刷新令牌,并使用“Authorization:Bearer access\u

我正在尝试在使用EWS连接到Office 365的电子邮件应用程序的上下文中访问登录用户的个人资料照片

应用程序已在portal.azure.com上注册,并具有以下所需权限:

  • Office 365 Exchange Online->通过Exchange Web服务以登录用户身份访问邮箱
  • Windows Azure Active Directory->登录并读取用户配置文件
  • EWS部分工作正常,我可以登录用户,获取访问和刷新令牌,并使用“Authorization:Bearer access\u token”执行EWS操作

    我遇到的问题是获取用户的个人资料照片

    这是我要看的文件:

    我尝试使用的API端点是:

    得到

    。。。带有“授权:承载访问\u令牌”标题

    上述API返回此响应:

    HTTP 403 {“错误”:{“代码”:“ErrorAccessDenied”,“消息”:“访问被拒绝”。 请检查凭据,然后重试。“}”

    有什么不对劲吗

  • 根据以上文档,应该可以使用user.read范围获取用户的照片
  • 我上面提到的“登录并阅读用户配置文件”权限有一个工具提示,上面写着“user.read”,所以我认为这是正确的范围
  • 我尝试在jwt.io上解码我的访问令牌,它有:
    “scp”:“完全访问”作为“用户”
    -我的用户读取范围在哪里,还是“完全访问”包括“用户读取”


    有什么想法吗?

    这是因为您尝试使用v2端点Rest API,但没有向v2端点注册应用程序

    用户照片API仅在Azure AD v2身份验证端点上可用,而不在Azure AD和Oauth上可用:

    你需要去注册你的申请。有关更多详细信息,请参阅。

    ,以获取记录:

    因为我们不能为此使用OAuth2API-

    • 由于和我们的应用程序已经使用EWS(Exchange Web服务)了
    我们只是在用户(帐户)自己的电子邮件地址中使用了GetUserPhoto命令


    很好。

    嗨,@KostyaVasilyev。如果这个答案对你有帮助,请把它标记为答案,这样我们可以帮助更多的人。谢谢谢谢你,韦恩。我看过那些文件,但不知何故没有“连接点”。1-v2身份验证终结点是否确实不支持Exchange Web服务(EWS)或IMAP访问电子邮件(以及EWS的日历/联系人)?只有新的Outlook REST API?2-是否有办法使用Azure广告令牌(我们目前用于EWS访问)获取用户的个人资料照片?1。目前,v2端点仅支持Microsoft graph API和Outlook REST API。2.我认为我们现在只能使用v2点来获取用户照片。但我没有做进一步的测试。