Active Directoryユーザーの「メンバー」タブの詳細リストをエクスポートする方法は?


8

私は現在、私が働いている会社のActive Directoryユーザーリストを再構築している最中です。そのリストを作成した人はひどい仕事をしており、もちろん、ここではもう働いていません。

私の質問は次のとおりです 。ユーザーグラフの[メンバー]タブに含まれるすべての情報を(理想的には)含むExcelスプレッドシートが欲しいのですが。

クエリを作成しようとしましたが、結果は「メンバー」タブの実際のコンテンツではなく、何かの「メンバー」であるユーザーのリストのみを提供します。

コマンドプロンプトから、またはActive Directoryから直接、これを行う方法はありますか?

公正な警告:VBSとPowershellについては何も知りません。

回答:


7

ユーザーのグループメンバーシップを取得する場合は、次のPowerShellコマンドを実行します。

Get-ADPrincipalGroupMembership $Username | Select Name | out-file "filepath" ドキュメントを保存する場所(ドキュメントに付ける名前を含む)

どこに$Usernameあなたが照会しているユーザーの名前です。


IMOこれは、ジョブに適したツールです。
笑い2015年

3

私はこれを持っています。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にエクスポートします


ジョシュRが私を倒したのを見ただけだ。彼も同様に単純です。
mortenya 2014年

1
ただし、PowerShellの下位バージョンで動作します。
Josh

確かに、私は私が私のグループでスクリプトを共有するとき、私はPowerShellの経験を持つだけだと、心の中でそれを維持しなければならなかった、としているようなだけで、これまで2.0過ぎアップグレード1
mortenya

今考えてみるGet-ADPrincipalGroupMembershipと、2.0 だと思います。私が何を考えていたかわからない。
Josh

返信ありがとうございます。実はもっとシンプルに見えるので、私は仕事中にジョシュRのものを試します。誤解しない限り、ドメインのすべてのユーザーに対してこのクエリを生成する必要がありますか?または、もし私がMortenyaのものを使用すると、最初に完全なリストが生成されますか?私が正しく理解していることを確認したいだけです!:)

1

次のクエリ文字列を入力して、「ADユーザーとコンピュータ」でユーザーを含むOUに適用される新しいクエリを作成および定義できます。

(&(&(&(&(objectCategory=user)(userAccountControl=512)))))

次に、ADウィンドウの上部にある[Export List]を使用して、結果をcsvにエクスポートします。


0

ファイルを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

ネストされたグループguysがある場合、これは機能しません.. 1人のユーザーが20グループのメンバーであるように、表示されません
user420934
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.