正如標題所說。我正在尋找一種方法來列出每個用戶,以及他們所在的組。
我知道您可以如何使用Get-AzureADGroupMember -ObjectId "groupidhere"
,然后輸出是該組中的所有用戶。但是您將如何自動執行此操作?這甚至可能與powershell有關嗎?
之后我將使用此表在 Hudu 中創建一個表。我還沒有看到有人與組和用戶一起這樣做,所以我知道這是不可能的或不應該的。
所以我從這里得到的輸出$Users也顯示了一些輸出$Groups_Name
一個表格,其中包含有關用戶的所有資訊,以及他們所在的組。
| 姓名 | 電子郵件 | 集團 |
所以輸出將是這樣的:
DisplayName UserPrincipalName DisplayName
----------- ----------------- -----------
Name Nameson user@domain.com Group names
Name Nameson user@domain.com Group names
Name Nameson user@domain.com Group names
Name Nameson user@domain.com Group names
Name Nameson user@domain.com Group names
Name Nameson user@domain.com Group names
Name Nameson user@domain.com Group names
Name Nameson user@domain.com Group names
我正在撰寫腳本(我知道這太亂了)
# Table of all users
$Users = Get-AzureADUser -All:$true
# Table of all groups
$Groups = Get-AzureADGroup
# ALL users ObjectId
$Users_ObjectId = $Users | Select-Object ObjectId
# ALL Groups ObjectId
$Groups_ObjectId = $Groups | Select-Object ObjectId
#Group names - list
$Groups_Name = $Groups | Select-Object DisplayName
#User names - list
$Users_Name = $Users | Select-Object DisplayName
foreach ($i in $Users ) {
# If
if ($Groups -contains $Users_ObjectId) {
#print a table with desired formatting
#$Users $Groups_Name
}
}
uj5u.com熱心網友回復:
嘗試使用Get-AzureADUserMembership這樣的:
$users = Get-AzureADUser -All $true
$report = Foreach ($user in $users) {
$groups = $user | Get-AzureADUserMembership
# create output objects with username and groups:
Foreach ($group in $groups) {
[PSCustomObject][ordered]@{
UserDisplayName = $user.DisplayName
UserPrincipalName = $user.UserPrincipalName
GroupDisplayName = $group.DisplayName
}}}
# print a table with desired formatting
$report | ft
報告看起來像這樣:
UserDisplayName UserPrincipalName GroupDisplayName
--------------- ----------------- ----------------
John Smith j.smith@domain.com Marketing
John Smith j.smith@domain.com Marketing-VIPs
John Doe j.doe@domain.com Sales
John Doe j.doe@domain.com Management
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/316408.html
