O365租约的委派管理员/ adminconsent无法获得应用程序权限

时间:2019-09-19 06:42:33

标签: microsoft-graph

我在Microsoft 0365租赁中有一个Microsoft帐户,该帐户已配置了对我的客户端O365租赁的委派管理员访问权限。

我正在创建一个应用程序来管理所有客户的许可证。为此,我使用以下permissions

在租户中创建了一个应用程序

然后,我使用委派的管理员帐户在客户端凭据上遵循管理员同意流程进行登录。

https://login.microsoftonline.com/<tenant id>/adminconsent?client_id=<my clientId>&state=1234123asd123&redirect_uri=https://localhost:5001/signin-microsoft

这是委托管理员可以访问的我的一位客户的ID,一旦我同意,我将被重定向到https://localhost:5001/signin-microsoft?admin_consent=True&tenant=<tenant id>&state=12345

由于此应用程序在后台运行,因此我向授权端点https://login.microsoftonline.com/<tenant id>/oauth2/v2.0/token发出了发布请求,其中我的客户租户ID在url中而不是common。 request

我成功获得了access_token,但是当我请求查看我的客户组织信息时,却遇到了这个错误

{
  "error": {
    "code": "Authorization_IdentityNotFound",
    "message": "The identity of the calling application could not be established.",
    "innerError": {
      "request-id": "b312458e-3016-47d1-92f9-54e5d572e0f7",
      "date": "2019-09-19T05:57:33"
    }
  }
}
  1. 在此过程中是否缺少我阻止获得所需权限的步骤?
  2. 有没有一种方法可以检查是否已成功获得管理员同意?

作为旁注,香港专业教育学院为授权授予流程执行了相同的过程,并且能够获得访问权限,除非我请求用户重新登录,否则我将无法刷新相同权限的access_token。我的应用程序旨在在后台运行,因此为什么我希望使用客户端凭据流来初始同意权限,并在后台过期后获得新令牌。

0 个答案:

没有答案