我正在尝试通过UPN为CSV文件中的多个用户更新AzureADGroupMember。
这是我遇到并尝试过的:
$users = Import-csv "C:\Temp\testgroup2.csv"
$users | ForEach-Object{
Add-AzureGroupADGroupMember -ObjectId xcv9890-stest999-xcvxc234-xcv2342324
-RefObjectId (Get-AzureADUser -ObjectId $_.UPN).ObjectId
}
我收到以下2个错误。
Import-csv : The member "Role" is already present.
At line:1 char:10
Get-AzureADUser : Cannot bind argument to parameter 'ObjectId' because it
is null.
At line:4 char:120
知道为什么这种情况持续发生吗?我真的很感谢您的帮助。
谢谢
答案 0 :(得分:0)
好吧,由于您没有提供.csv
文件,因此我可以为您提供适合我的解决方案。
首先,让我们检查两个错误。
Import-csv:成员“角色”已经存在。
我可以重现此问题,这意味着您的.csv
文件具有两列标题“角色”,只需将其修改为正确的格式即可。
Get-AzureADUser:无法将参数绑定到参数“ ObjectId”,因为它 为空。
这意味着$_.UPN
部分为空,这可能是由第一个错误引起的。
我的样本:
testgroup.csv
UPN,Role
leeliu@xxxxxx.onmicrosoft.com,role1
test@xxxxxx.onmicrosoft.com,role2
脚本(您应该使用Add-AzureADGroupMember
,而不是Add-AzureGroupADGroupMember
):
$users = Import-csv "C:\Users\joyw\Desktop\testgroup.csv"
$users | ForEach-Object{
Add-AzureADGroupMember -ObjectId 9d42xxxxxx28b600ad -RefObjectId (Get-AzureADUser -ObjectId $_.UPN).ObjectId
}
注意:在运行脚本之前,您需要确保用户尚未在组中,否则将出现One or more added object references already exist for the following modified properties: 'members'
错误。