PowerShell不提供“读者和数据访问”角色?

时间:2018-04-12 14:24:00

标签: powershell azure azure-powershell azure-automation

我正在尝试将“读取器和数据访问”角色分配给Azure中的服务主体,但是它会抛出错误

我没有在MSDN上看到此角色,但在天蓝色门户网站上可见

New-AzureRmRoleAssignment 
      -RoleDefinitionName 'Reader and Data Access' `
      -ServicePrincipalName $app.ApplicationId`
  

New-AzureRmRoleAssignment:过滤器'roleName eq'读者和数据   不支持访问''。支持的过滤器是roleName eq   '{value}'或输入eq'BuiltInRole | CustomRole'

但是我可以从Azure UI控制台中看到并分配此角色。

enter image description here

1 个答案:

答案 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