我正在尝试将“读取器和数据访问”角色分配给Azure中的服务主体,但是它会抛出错误
我没有在MSDN上看到此角色,但在天蓝色门户网站上可见
New-AzureRmRoleAssignment
-RoleDefinitionName 'Reader and Data Access' `
-ServicePrincipalName $app.ApplicationId`
New-AzureRmRoleAssignment:过滤器'roleName eq'读者和数据 不支持访问''。支持的过滤器是roleName eq '{value}'或输入eq'BuiltInRole | CustomRole'
但是我可以从Azure UI控制台中看到并分配此角色。
答案 0 :(得分:1)
我在我的实验室测试,我得到了同样的错误日志。我使用-RoleDefinitionId
而不是-RoleDefinitionName
解决了这个问题。以下脚本适合我。
$value=Get-AzureRmRoleDefinition
$a=$value |where {$_.Name -eq "Reader and Data Access"}
New-AzureRmRoleAssignment -ObjectId $app.ObjectId -Scope /subscriptions/$subscriptionID -RoleDefinitionId $a.Id