首页 > 解决方案 > 我可以创建具有通配符访问权限的 Azure 角色分配吗?

问题描述

我想要一个可以为服务总线重新生成密钥的服务主体。不幸的是,我的组织超出了自定义角色创建的限制。我希望让“贡献者”访问订阅中的所有服务总线,但我找不到办法。有没有办法用通配符之类的东西来实现这一点?像这样:

az role assignment create --assignee (service-principal) --role Contributor --scope "/subscriptions/(subscription)/resourceGroups/\*/providers/Microsoft.ServiceBus/namespaces/\*"

我找不到与服务总线相关的内置角色,例如具有“存储帐户密钥操作员服务角色”的存储帐户。

任何帮助,将不胜感激。谢谢!

标签: azureazure-active-directoryazureservicebus

解决方案


Azure CLI 似乎不支持通配符--scope,如果您想为Contributor订阅中的所有服务总线赋予服务主体一个角色,我的解决方法是通过Azure Powershell来实现,您可以参考下面的命令,它工作正常在我这边。

$ResourceId = (Get-AzureRmResource -ResourceType Microsoft.ServiceBus/namespaces).ResourceId
foreach($rid in $ResourceId){
    New-AzureRmRoleAssignment -ObjectId <Service Principal ObjectId> -Scope $rid -RoleDefinitionName Contributor
}

推荐阅读