【问题标题】:Office365 Rest API 401 "The audience claim value is invalid"Office365 Rest API 401“观众声明值无效”
【发布时间】:2019-01-03 18:46:09
【问题描述】:

我有一个可以成功刷新的 microsoft 令牌,但是当我尝试在一个授权范围内进行基本调用时,我得到一个 401。调用是:https://outlook.office365.com/api/v2.0/me,这里是从服务器返回的详细信息:

https://outlook.office365.com/api/v2.0/me> @request=# @request_headers={"Authorization"=>"Bearer MYTOKENGOESHERE", "Accept"=>"application/json", "User-Agent"=>"Faraday", "client-request-id"=>"221e4530-9075-11e8-abc0-186590cf8dc9", "return-client-request-id"=>"true"} @ssl= # @response=# @response_headers={"server"=>"Microsoft-IIS/10.0", "request-id"=>"7624eddb-b6ab-42ca-beff-c1132f64ded9", "client-request-id"=> “221e4530-9075-11e8-abc0-186590cf8dc9”、“x-calculatedbetarget”=>“BY1PR15MB0055.NAMPRD15.PROD.OUTLOOK.COM”、“x-backendhttpstatus”=>“401”、“x-rum-validated”= >"1", "x-ms-diagnostics"=>"2000003;reason=\"观众声明值无效'https://graph.microsoft.com'。\";error_category=\"invalid_resource\"", "x-besku" =>“Gen8”、“x-diaginfo”=>“BY1PR15MB0055”、“x-beserver”=>“BY1PR15MB0055”、“x-powered-by”=>“ASP.NET”、“x-feserver”=> "BYAPR01CA0019", "www-authenticate"=>"Bearer client_id=\"MYIDGOESHERE\",trusted_issuers=\"00000001-0000-0000-c000-0000000000000@*\", token_types=\"app_asserted_user_v1 serv ice_asserted_app_v1\", authorization_uri=\"https://login.windows.net/common/oauth2/authorize\", error=\"invalid_token\",Basic Realm=\"\",Basic Realm=\"\"", "date"=>"2018 年 7 月 26 日星期四01:42:26 GMT", "connection"=>"close", "content-length"=>"0"} @status=401>>

我现在有很多用户使用相同的代码路径很好,但是一些用户遇到了这个问题,这让我认为这是他们的配置问题或其他什么,但是错误消息并没有告诉我们很多...请帮助

【问题讨论】:

  • 另外,我刚刚注意到“声明”似乎指向我们甚至没有授权的“graph.microsoft.com”(它不是范围之一),也不是这个 url 请求访问到那个端点。对此有何想法?
  • 嗨,这也影响了我们。你有没有得到解决方案?

标签: oauth-2.0 outlook office365


【解决方案1】:

出于安全原因,Microsoft 范围的内部管理已更改。我们使用的是 Microsoft Graph 范围的 Mail.Read 等范围,但我们使用它们来访问 Outlook.com 端点。直到上周这是允许的,但现在不再允许了。

修复方法是在前面添加 https://outlook.office.com,因此新范围将是 https://outlook.office.com/Mail.Read,并且 Outlook REST API 端点上允许使用此范围格式。请注意不要混合使用图表和前景范围,因为您似乎无法获得可以同时用于这两种 API 的单个令牌。

【讨论】:

  • 感谢您的回答!您是如何发现的,是否有我们可以参考的 Microsoft 文档来源?
  • 微软支持帮助我们解决了这个问题,但据我所知,更改等并没有在线记录。如果您查看 outlook.com REST API 文档,他们确实列出了带有 URL 前缀的范围,但其余的没有在我能找到的任何地方列出。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-12-08
  • 2013-01-16
  • 2020-12-15
  • 1970-01-01
  • 2019-04-17
  • 2021-12-20
  • 1970-01-01
相关资源
最近更新 更多