私は現在、私が働いている会社のActive Directoryユーザーリストを再構築している最中です。そのリストを作成した人はひどい仕事をしましたが、もちろん、ここではもう働いていません。
私の質問は次のとおりですユーザーグラフの[メンバー]タブに含まれるすべての情報を含むExcelスプレッドシートが(理想的には)必要です。
クエリを作成してみましたが、結果は「メンバー」タブの実際のコンテンツではなく、何かの「メンバー」であるユーザーのリストのみを提供します。
コマンドプロンプトから、またはActive Directoryから直接、これを行う方法はありますか?
公正な警告:VBSとPowershellについては何も知りません。
ユーザーのグループメンバーシップを取得する場合は、次のPowerShellコマンドを実行します。
Get-ADPrincipalGroupMembership $Username | Select Name | out-file "filepath"
ドキュメントを保存する場所(ドキュメントに付ける名前を含む) "
どこ $Username
は、照会するユーザーの名前です。
私はこれを持っています。CSVにダンプするには、PowerShellを少し学ぶ必要がありますが、今はテキストファイルにダンプするだけです。
$users = Get-ADUser -Filter * -Properties * -SearchBase "OU=something,DC=domain,DC=net"
foreach ($user in $users) {
$file = $user.Name + '_ACL'
(Get-ADUser –Identity $user –Properties MemberOf).MemberOf -replace '^CN=([^,]+),OU=.+$','$1' | Out-File c:\PSResults\$file.txt
}
CSV出力で機能させるのに時間をかける必要はありませんでした。
-csvにエクスポートする場合は、out-fileパスを保存先のパスに加えてdocument.csvの名前に変更します(例:out-file C:\ PSResults \)。 $ file.csvは$ fileという名前のCSVにエクスポートします
次のクエリ文字列を入力して、「ADユーザーとコンピュータ」でユーザーを含むOUに適用される新しいクエリを作成および定義できます。
(&(&(&(&(objectCategory=user)(userAccountControl=512)))))
次に、ADウィンドウの上部にある[Export List]を使用して、結果をcsvにエクスポートします。
ファイルをCSVにするには、コードの「Out-File c:\ PSResults\$ file.txt」を「Export-CSV -path c:\ PSResults\$ file.csv -NoTypeInformation」に置き換えます。
したがって、次のようになります。
$users = Get-ADUser -Filter * -Properties * -SearchBase "OU=something,DC=domain,DC=net"
foreach ($user in $users) {
$file = $user.Name + '_ACL'
(Get-ADUser –Identity $user –Properties MemberOf).MemberOf -replace '^CN=([^,]+),OU=.+$','$1' | Export-CSV -path c:\PSResults\$file.csv -NoTypeInformation
}
ただし、他のユーザーがすでに投稿しているので、簡単なワンライナーなので、以下を使用するのが最適です。
Get-ADPrincipalGroupMembership USERNAME | Select Name | Export-CSV -path C:\Temp\file.csv -NoTypeInformation