0

我有一个部署一些 ARM 模板的构建管道。其中一些资源需要为 RBAC 分配角色。

管道用于连接订阅的服务原则是所有者,但是如果模板尝试创建角色分配资源,或者我尝试在管道中运行 az cli 创建分配,则权限不足。

允许此操作需要所有者以上的哪些权限?

4

1 回答 1

0

我想你误解了Global adminand OwnerGlobal adminAdministrator roleAzure AD 中的一个,而是Owner订阅RBAC role中的一个。它们是不同的东西。

当您使用如下所示的 azure cli 创建角色分配时,它会将服务主体添加joytestspOwner存储帐户。您登录的服务主体需要先调用 AAD Graph 获取对象,然后调用 azure mangement rest api 将其添加到存储帐户。

az role assignment create --assignee 'joytestsp' --role 'Owner' --scope '/subscriptions/xxxxxx/resourceGroups/xxx/providers/Microsoft.Storage/storageAccounts/joyfunction'

因此,要解决此问题,您可以导航到Azure Active Directory门户中的 -> Roles and administrators-> 单击Global administrator-> Add assignments-> 添加用于以Global administrator. 然后它应该工作。


此外,如果您不想将其提供给Global administrator服务主体,您也可以object id在命令中指定服务主体/用户的 ,那么它也可以工作。

az role assignment create --assignee 'b4d3c922-xxxxxxx-3ab785333011' --role 'Owner' --scope '/subscriptions/xxxxxx/resourceGroups/xxx/providers/Microsoft.Storage/storageAccounts/joyfunction'
于 2019-10-07T07:06:22.823 回答