服务管理员如何获得足够的权限来创建 Azure 自定义角色

How does a service administrator get enough permission to create azure custom roles

我正在尝试在 azure (RBAC) 中创建 Custom Role。但是当我执行 powershell 命令 New-AzureRmRoleDefinition 时,我得到的消息是我无权创建它。

> New-AzureRmRoleDefinition .\developer_access_rbac.json


New-AzureRmRoleDefinition : AuthorizationFailed: The client 'admin@company.com' with object id
'{guid}' does not have authorization to perform action
'Microsoft.Authorization/roleDefinitions/write' over scope
'/providers/Microsoft.Authorization/roleDefinitions/{guid}'.
At line:1 char:1
+ New-AzureRmRoleDefinition .\developer_access_rbac.json
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : CloseError: (:) [New-AzureRmRoleDefinition], CloudException
    + FullyQualifiedErrorId : Microsoft.Azure.Commands.Resources.NewAzureRoleDefinitionCommand

我问过我们组织中的一位管理员,他说帐户 admin@company.com 已经是全局管理员。并且在活动目录中 admin@company.com 显示为服务管理员。

我对 Azure 中的这些权限级别感到有些困惑。任何人都可以向我解释如何获得帐户 admin@company.com 所需的权限以解决问题。

取自https://azure.microsoft.com/en-us/documentation/articles/role-based-access-control-custom-roles/#custom-roles-access-control:

谁可以创建自定义角色?订阅、资源组和资源的所有者(和用户访问管理员)可以创建自定义角色以在这些范围内使用。创建角色的用户需要能够对角色的所有 AssignableScopes 执行 Microsoft.Authorization/roleDefinition/write 操作。

谁可以修改自定义角色?订阅、资源组和资源的所有者(和用户访问管理员)可以修改这些范围内的自定义角色。用户需要能够对自定义角色的所有 AssignableScopes 执行 Microsoft.Authorization/roleDefinition/write 操作。

谁可以查看自定义角色? Azure RBAC 中的所有内置角色都允许查看可用于分配的角色。可以在某个范围内执行 Microsoft.Authorization/roleDefinition/read 操作的用户可以查看可在该范围内分配的 RBAC 角色。

我实际上遇到了同样的问题,发现错误具有误导性。

我不得不清除可分配范围,然后再添加一个。

$role.AssignableScopes.Clear()
$role.AssignableScopes.Add("/subscriptions/12345678912345789123456789")

我遇到了同样的问题。问题出在 json 文件中的 AssignableScopes 部分。只需要添加:/subscriptions/