通过 EmployeeID 更新多个用户 ADGroup
Updating Multiple Users ADGroup by EmployeeID
我正在尝试通过员工在 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
}
这是我将 UPN 更改为按 CSV 中的 EmployeeID 更新的代码。
$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 *
知道为什么即使我已经验证,它仍然显示 Azure 中不存在 employeeID 吗?
谢谢,
更新:添加我的 csv 设置的屏幕截图,其中只有员工 ID:
CSV Setup
更新 2:我在 powershell 中 运行 的脚本截图:Script in PS
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
我正在尝试通过员工在 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
}
这是我将 UPN 更改为按 CSV 中的 EmployeeID 更新的代码。
$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 *
知道为什么即使我已经验证,它仍然显示 Azure 中不存在 employeeID 吗?
谢谢,
更新:添加我的 csv 设置的屏幕截图,其中只有员工 ID: CSV Setup
更新 2:我在 powershell 中 运行 的脚本截图:Script in PS
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