首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Microsoft : Authorization_IdentityNotFound

Microsoft : Authorization_IdentityNotFound
EN

Stack Overflow用户
提问于 2018-03-27 21:18:58
回答 2查看 2.7K关注 0票数 3

我正在按照获得没有用户的访问权限指南编写一个叫做MicrosoftGraph的Python。

此脚本将从cron调度,因此无法获得管理员同意(因此使用客户端凭据进行授权)。我能够使用这个调用成功地获得一个令牌:

代码语言:javascript
复制
request_url = "https://login.microsoftonline.com/mytenant.onmicrosoft.com/oauth2/v2.0/token"
data = { 
   'Host' : 'login.microsoftonline.com',
   'Content-Type' : 'application/x-www-form-urlencoded',
   'client_id' : 'my-client-id-1234',
   'scope' : 'https://graph.microsoft.com/.default',
   'client_secret' : client_secret,
   'grant_type' : 'client_credentials'
}
response = requests.post(url = request_url, data = data)

然后,我尝试使用有效的令牌获取这个调用的用户列表:

代码语言:javascript
复制
request_url = "https://graph.microsoft.com/v1.0/users"
headers = { 
   'Authorization' : 'Bearer ' + token,
   'Host' : 'graph.microsoft.com'
}
response = requests.get(url = request_url, headers = headers)

问题是我得到了一个Authorization_IdentityNotFound错误:

代码语言:javascript
复制
<Response [401]>
{
   "error": {
      "code": "Authorization_IdentityNotFound",
      "message": "The identity of the calling application could not be established.",
      "innerError": {
         "request-id": "2257f532-abc4-4465-b19f-f33541787e76",
         "date": "2018-03-27T19:11:07"
      }
   }
}

以下是我选择的权限:

知道怎么纠正这个错误吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-28 19:04:12

首先,您可以删除所有委托的权限范围。如果使用的是客户端凭据授予,则只使用应用程序权限范围。

其次,在使用客户端凭据之前,需要执行Admin同意流。这是通过让租户进行全局管理员身份验证和接受您的范围请求来完成的:

代码语言:javascript
复制
https://login.microsoftonline.com/common/adminconsent?client_id=[APPLICATION ID]&redirect_uri=[REDIRECT URI]

您可以在这里阅读更多关于行政许可的内容:v2端点与行政同意

票数 2
EN

Stack Overflow用户

发布于 2019-03-12 23:41:12

对于其他遇到这个问题的人,在发现文档遗漏了一个非常重要的警告之前,我也会得到这个错误:

  • 对于客户端凭据,如果应用程序属于工作或学校(组织)上下文,那么对于https://login.microsoftonline.com/common/oauth2/token,将common替换为tenantId或域名

请参阅基于Microsoft请求的IdentityNotFound

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49522572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档