一键访问客户的 Azure 资源管理器

One click button access to azure resource manager for customers

目前是否可以在我的 Azure AD 租户中创建一个应用程序并允许客户授予它更改其资源组的权限。

我基本上想创建一个 Web 应用程序,允许任何 azure 资源所有者允许我的应用程序向他们选择的资源组添加内容。

我不知道客户是否需要具有全局管理员角色才能正常工作?

是否可以创建一个流程,让客户登录我的 webapp,并授予此选择的资源组权限,而无需他成为全局管理员。

Azure 门户中的某些东西是否可以 select 他的资源组添加允许我的 azure 广告应用程序访问他的资源组,或者客户需要什么才能做到这一点?

第 3 方应用程序可以通过两种方式访问​​用户的订阅:

  1. 委派权限(用户模拟):Azure 门户就是一个很好的例子。基本上在这种情况下,用户通过对他们的 Azure AD 进行身份验证 herself/himself 来登录到您的应用程序,然后您的应用程序代表登录用户进行 ARM API 调用。如果用户有权做某事,您的应用程序将执行该操作,否则您的用户将收到错误消息。
  2. Application Permission:这基本上更多的是针对运行用户未登录时在后台进行的事情。本质上这就是[=10]的概念所在=] 进来了。在这种情况下,具有管理权限的人向您的应用程序授予某些权限,然后您的应用程序将能够做它被允许做的事情。在这种情况下用户不需要在场。

现在回答您的问题:

I basically want to create an web application that allows any azure resource owner to allow my application to add something to a resource group of their choosing.

I cant figure out if its required for the customer to have the global administrator role for this to work?

是的,您可以创建此类 Web 应用程序,并且客户无需成为全局管理员即可使用此类应用程序。事实上,这就是我们在 Cloud Portam 中提供 Azure 订阅管理的方式。 Azure 门户的工作方式相同。当您登录到 Azure 门户时,您只能执行您有权执行的操作。要查看实际效果,只需使用具有 Reader 角色的用户登录到 Azure 门户并尝试创建一些资源。

Is it possible to make a flow that lets the customer sign in to my webapp, and give permission for a resource group of this choose, without him being the global administrator.

是的,这完全有可能,但是从 Azure 的角度来看,权限将处于订阅级别,而不是资源组级别。同样,由于您将模拟用户,因此用户无需明确授予您访问某些资源的权限。 Azure RBAC 会为你处理这件事。

Is it possible for something in the azure portal to select his resource group add allow my azure ad application to get access to his resource group, or what is needed from the customer for this to be possible?

是的,可以这样做。但是在这种情况下,向您的应用程序授予权限的用户的角色应允许 her/him 执行此操作。他们应该对 Microsoft.Authorization 资源提供者具有写入权限。但是请记住,一旦您的应用程序(也称为 Service Principal)被授予访问用户订阅中资源的权限,用户就无需登录。您通常希望将此方法用于后台进程类型的应用程序。