使用 PowerShell 通过 Manager 生成所有 AD 用户的报告
Using PowerShell to generate report of all AD users with Manager
请多多包涵。我没有使用 AAD/PS.
的经验
我只是在尝试生成用户及其管理员的列表。
我做的是这样的:
$UserId = (Get-AzureADUser -All $true).ObjectId
$bla = foreach ($User in $UserId)
{
write-output $User
Get-AzureADUserManager -ObjectId $User
}
$bla | Out-File "C:\Temp\Test.txt"
我用用户 ObjectId 填充 $UserId,然后搜索该用户的管理器 Get-AzureADUserManager。
如何更改它以生成包含以下数据的列表:
UsersObjectId UserUPN UserType ManagersObjectId ManagerUPN ManagerUserType
我还希望它包括所有未设置任何管理器的 UserObjectId(包括 null)。
有什么实现方法吗?
这应该可以满足您的要求:
$output = @()
$users = Get-AzureADUser -All $true
foreach ($user in $users) {
$manager = Get-AzureADUserManager -ObjectId $user.ObjectId
$data = New-Object -TypeName psobject
$data | Add-Member -MemberType NoteProperty -Name UsersObjectId -Value $user.ObjectId
$data | Add-Member -MemberType NoteProperty -Name UserUPN -Value $user.UserPrincipalName
$data | Add-Member -MemberType NoteProperty -Name UserType -Value $user.UserType
$data | Add-Member -MemberType NoteProperty -Name ManagersObjectId -Value $manager.ObjectId
$data | Add-Member -MemberType NoteProperty -Name ManagerUPN -Value $manager.UserPrincipalName
$data | Add-Member -MemberType NoteProperty -Name ManagerUserType -Value $manager.UserType
$output += $data
}
$output | Export-Csv -Path output.csv -NoTypeInformation
它将创建一个 CSV 文件,其中的列等于您要查找的数据,其中每行代表原始查询中的一个用户。
如果 Get-AzureADUserManager
returns null.
请多多包涵。我没有使用 AAD/PS.
的经验我只是在尝试生成用户及其管理员的列表。
我做的是这样的:
$UserId = (Get-AzureADUser -All $true).ObjectId
$bla = foreach ($User in $UserId)
{
write-output $User
Get-AzureADUserManager -ObjectId $User
}
$bla | Out-File "C:\Temp\Test.txt"
我用用户 ObjectId 填充 $UserId,然后搜索该用户的管理器 Get-AzureADUserManager。
如何更改它以生成包含以下数据的列表:
UsersObjectId UserUPN UserType ManagersObjectId ManagerUPN ManagerUserType
我还希望它包括所有未设置任何管理器的 UserObjectId(包括 null)。
有什么实现方法吗?
这应该可以满足您的要求:
$output = @()
$users = Get-AzureADUser -All $true
foreach ($user in $users) {
$manager = Get-AzureADUserManager -ObjectId $user.ObjectId
$data = New-Object -TypeName psobject
$data | Add-Member -MemberType NoteProperty -Name UsersObjectId -Value $user.ObjectId
$data | Add-Member -MemberType NoteProperty -Name UserUPN -Value $user.UserPrincipalName
$data | Add-Member -MemberType NoteProperty -Name UserType -Value $user.UserType
$data | Add-Member -MemberType NoteProperty -Name ManagersObjectId -Value $manager.ObjectId
$data | Add-Member -MemberType NoteProperty -Name ManagerUPN -Value $manager.UserPrincipalName
$data | Add-Member -MemberType NoteProperty -Name ManagerUserType -Value $manager.UserType
$output += $data
}
$output | Export-Csv -Path output.csv -NoTypeInformation
它将创建一个 CSV 文件,其中的列等于您要查找的数据,其中每行代表原始查询中的一个用户。
如果 Get-AzureADUserManager
returns null.