【问题标题】:How do I add administrator accounts for granting static permissions to my Azure AD App?如何添加管理员帐户以向我的 Azure AD 应用程序授予静态权限?
【发布时间】:2019-08-30 16:17:26
【问题描述】:

我已设置 Azure Active Directory 应用程序,以便可以使用 MSAL 访问 Microsoft Graph API。但是,我想在没有用户 (https://docs.microsoft.com/en-us/graph/auth-v2-service) 的情况下执行 API 调用,因此我向我的应用添加了一些需要“管理员同意”的权限。但是,我找不到向我的应用授予这些权限的方法。

我尝试在 Azure 门户中寻找授予这些权限的方法,但没有成功。我也尝试过使用https://login.microsoftonline.com/{tenant}/adminconsent&... 链接来授予权限,但没有成功。

我收到的回复是

AADSTS500201:我们无法从此 API 版本为 微软帐户。请联系应用程序供应商,因为他们 需要使用 2.0 版本的协议来支持。

我没有 Azure 订阅(甚至没有免费订阅),但看到我能够将应用程序添加到 Azure AD 以及获取访问令牌,然后代表授权用户进行 API 调用,我认为我可能不需要订阅。

【问题讨论】:

  • 好的,这里有很多问题 :) 从技术上讲,您不需要 Azure 订阅即可使用 Azure AD。要为服务到服务调用定义应用权限(应用角色),您可以在我的博客中查看如何操作:joonasw.net/view/defining-permissions-and-roles-in-aad。您必须将它们添加到 portal.azure.com 中的清单中。您需要在 API 的应用注册中定义它们,然后从客户端应用的应用注册中要求它们。然后,您可以通过定义所需权限的页面上的按钮授予管理员同意。
  • 我添加了一个屏幕截图,表明我在 Azure 门户的 API 权限视图中没有看到“授予管理员同意”按钮。我要注意的是,我并没有试图公开我自己的 API,而是仅使用这个注册的应用程序作为调用 Microsoft 的 Graph API 的一种方式,一旦用户授权它并授予它许可。阅读您的博客文章,我相信我应该将我的权限添加到应用程序清单中 - 特别是“oauth2Permissions”字段,该字段目前不包含任何值。我是否理解正确?
  • 显然,当我创建应用程序时,为我创建了一个帐户 admin@*myemail*com.onmicrosoft.com。我可以使用它打开login.microsoftonline.com/common/adminconsent... 链接并授予权限,之后我被重定向到应用程序中设置的redirect_uri。但是在 API Permissions 视图中,我没有看到任何变化。它看起来与我问题中的图片相同。

标签: azure active-directory microsoft-graph-api msal


【解决方案1】:

我刚刚制作了另一个应用程序,现在当我打开 API 权限视图时,我有授予同意按钮。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-19
    • 1970-01-01
    • 2022-01-19
    相关资源
    最近更新 更多