1

我正在尝试通过 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

知道为什么会这样吗?我非常感谢您的帮助。

谢谢,

4

1 回答 1

0

好吧,既然你没有提供.csv文件,我只能给你一个适合我的解决方案。

首先,让我们检查两个错误。

Import-csv :成员“角色”已经存在。

我可以重现此问题,这意味着您的.csv文件有两列标题“角色”,只需将其修改为正确的格式即可。

在此处输入图像描述

在此处输入图像描述

Get-AzureADUser:无法将参数绑定到参数“ObjectId”,因为它为空。

这意味着这部$_.UPN分为空,这可能是由第一个错误引起的。

我的样本

测试组.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'出错。

于 2019-04-17T06:29:30.307 回答