我一直试图使用PowerShell代码在Azure中的多个资源上分配多个角色,原因是我们不使用自定义角色来节省成本,以下是我尝试编写代码的方式。
$RGs = Import-CSV -Path "C:\input\RBAC-RGs.csv"
$Roles = Import-CSV -Path "C:\input\RBAC-Roles.csv"
$AZAD = Get-AzADGroup -SearchString "Group-Name" #Get Group name Object ID
ForEach ($Group in $RGs) {
Get-AzResourceGroup -Name "$RGs.ResouceGroups" #Get Resource Group resource ID for scope
New-AzRoleAssignment -ObjectId "$AZAD.id" `
-RoleDefinitionName "Storage Account Contributor" `
-Scope "/subscriptions/{subscripotionid}/resourceGroups/resource-group-name"
答案 0 :(得分:1)
这是可能的。您的脚本中只有一个PowerShell问题:
New-AzRoleAssignment -ObjectId "$AZAD.id"
=>您必须在此处省略引号或像这样"$($AZAD.id)"
来包装属性访问权限。