我正在尝试按员工在CSV文件中更新多个用户的AzureADGroupMember。
这就是我所得到的帮助,但希望有它的更新由UPN而不是EmployeeID。这是通过UPN更新ADGroupMember的成功代码。
$users = Import-csv "C:\Temp\testgroup2.csv"
$users | ForEach-Object{
Add-AzureADGroupMember -ObjectId 599992-xxxxxxxxxx-699999e9e -
RefObjectId (Get-AzureADUser -ObjectId $_.UPN).ObjectId
}这是我在CSV中通过EmployeeID更改UPN进行更新的代码。
$users = Import-csv "C:\Temp\testgroup2.csv"
$users | ForEach-Object{
Add-AzureADGroupMember -ObjectId 599992-xxxxxxx-6ee9999e -
RefObjectId (Get-AzureADUser -ObjectId $_.EmployeeID).ObjectId
}这是我在尝试通过EmployeeID进行更新时收到的错误消息。
Get-AzureADUser : Error occurred while executing GetUser Code:
Request_ResourceNotFound Message: Resource '18616' does not exist or one
of its queried reference- property objects are not present. 这是我用来验证员工在Azure中是否真的有EmployeeID的工具。
Get-AzureADUser -ObjectID Xxxxx@hxxxxxx.com | Select-Object *你知道为什么即使我已经验证了,它还是显示employeeID在Azure中不存在吗?
谢谢,
更新:添加我的csv设置的屏幕截图,其中只有员工ID:CSV Setup
更新2:我在powershell中运行的脚本的屏幕截图:Script in PS
发布于 2019-04-18 09:21:40
employeeId与ObjectId不同,因此无法将employeeId传递给ObjectId属性。
尝试下面的脚本,它在我这边运行得很好。
$users = Import-csv "C:\Users\joyw\Desktop\testgroup.csv"
foreach($user in $users){
$refobjectid = (Get-AzureADUser | Where-Object {$_.ExtensionProperty.employeeId -eq $user.employeeId}).ObjectId
Add-AzureADGroupMember -ObjectId 9d42d3ea-xxxxxxxx-c31428b600ad -RefObjectId $refobjectid
}我的.csv文件:
UPN,Role,employeeId
leeliu@xxxxxx.onmicrosoft.com,role1,12345
test@xxxxxx.onmicrosoft.com,role2,123

https://stackoverflow.com/questions/55730615
复制相似问题