【问题标题】:Application Permissions greyed out when requesting API Permission in Azure AD在 Azure AD 中请求 API 权限时,应用程序权限灰显
【发布时间】:2021-06-15 10:07:56
【问题描述】:

进一步: API Permission Issue while Azure App Registration

Why is "Application permissions" disabled in Azure AD's "Request API permissions"?

当我尝试在 Active Directory 中注册应用程序时,我无法激活 API 权限中的应用程序权限按钮。我已经创建了角色(多次)并确保所有属性都是正确的,如两个帖子和https://docs.microsoft.com/en-us/azure/active-directory/develop/scenario-protected-web-api-app-registration 中所述 - 包括为应用程序设置的角色,.我正在使用我的 Azure 帐户的默认目录。我是我的目录中唯一的成员,并且是全局管理员的成员。

我还有什么遗漏的吗?

我的最终目标只是使用 .Net SDK 来管理应用程序服务上的防火墙,使用可以与应用程序一起分发的客户端密码。

这是清单

【问题讨论】:

  • 这是云提供商 101 的事情,很多人都需要做,但如何做却不明显。对于 azure 的 UX 团队来说,这是一个巨大的 0/10。

标签: azure azure-active-directory


【解决方案1】:

好的,那么您希望应用注册通过 Azure 资源管理 API 本身与客户端凭据流来管理应用服务吗? 在这种情况下,您无需为您的应用分配任何应用权限。 您需要创建应用程序,然后转到例如应用服务资源的访问控制 (IAM) 选项卡,并将所需的角色添加到您的应用。

那里的应用权限选项卡是灰色的原因是因为 Azure 服务管理应用注册(您无法编辑)没有定义任何应用权限。 当您在清单中定义应用权限时,该权限将成为其他应用程序可以用来调用您的 API 的权限,而不是 Azure 资源管理 API。

【讨论】:

  • 不,我不是在管理应用服务。我需要此应用注册才能拥有 Azure 服务管理 API 的 API 权限。这就是说,您让我想知道是否无法获得此权限级别,而我遇到了以下建议。 stackoverflow.com/questions/26003820/… - 所以不是一个答案,而是一个赞成票:)
  • 这是一个非常古老的答案,适用于旧 API。那时您必须创建一个证书,然后才能获得订阅管理员权限,没有其他选择。现在在 ARM 模型中,您可以在订阅/资源组/资源级别为应用分配角色,以便他们获得所需的访问权限。
  • 在重新阅读您的答案时,我将其标记为解决方案,因为它非常有用 - 只需使用 sql server。可惜sdk的文档太差了。
  • 就我而言,正如@juunas 所述,我需要转到 SQL 服务器并提供应用程序名称和安全角色之间的角色分配。参考帖子中提到的所有其他废话都是无关紧要的。这很烦人,因为我已经做了数百次类似的事情,但不理解服务主体和注册应用程序之间的关系。事实证明,它们在单个租户应用程序中本质上是相同的
【解决方案2】:

我还有什么遗漏的吗?

Applications Permissions 对您显示为灰色的原因是因为Azure Service Management API 只允许 Delegated Permissions,即此 API 将始终在登录用户的上下文中执行。换言之,用户(即使是服务主体)在执行此 API 时必须始终在场。

您提到您想使用客户端密码执行服务管理 API。为此,您需要做两件事:

  1. 正如@junnas 所述,您需要在 Azure 订阅中为您的应用程序(即服务主体)分配适当的 Azure RBAC 角色。更多详情请查看此链接:https://docs.microsoft.com/en-us/azure/role-based-access-control/overview

  2. 您需要使用客户端 ID 和客户端密码获取此服务主体的令牌。为此,您可以使用ClientSecretCredential

【讨论】:

  • 感谢 Guarav - 根据我的 cmets,我之前确实得出了这个结论 :) 我也从 Juuravs 的回答中弄清楚了。谢谢你的回答,它是正确的,只是不是第一个。投赞成票。
猜你喜欢
  • 2019-12-14
  • 2015-03-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-05
  • 1970-01-01
  • 1970-01-01
  • 2020-05-09
相关资源
最近更新 更多