hansis1
Goto Top

Active Directory Gruppen rekursive auslesen

Wie kann ich rekursive zB mit Powershell Verteilergruppen auslesen

Hallo!

Ich wurde gebeten eine Auswertung von AD zu machen.
Wir haben eine 3-Ebenen-Tiefe verschachtelte Verteilergruppe:
Verteilergruppe1
|-- Verteilergruppe2
|    |--Verteilergruppe3
|    |   |--Name 1
|    |   |--Name 2
|    |--Name 3
|    |--Name4
|--Name5
Ist es möglich hier mittels eines Befehles sich eine schöne Übersicht ausdrucken zu lassen?

danke
hansis

Content-ID: 197853

Url: https://administrator.de/contentid/197853

Ausgedruckt am: 22.11.2024 um 14:11 Uhr

LordXearo
LordXearo 29.01.2013 um 14:30:25 Uhr
Goto Top
Was für eine Art Auswertung möchtest du denn machen...?

Schau dir mal das Programm "Jose Active Directory Dokumentation" an.

Gruß

Xearo
drnatur
drnatur 29.01.2013 um 14:31:21 Uhr
Goto Top
hallo,

ich zitiere mal von einem Beitrag auf administrator.de:
Zitat von @bastla:
Hallo AlbertMinrich!

Schau Dich mal bei Richard L Mueller um ...

... und außerdem gibt's fast nix, das die
http://blogs.technet.com/b/heyscriptingguy/archive/2005/10/13/how-can-i ...
Scripting Guys nicht schon vorgeturnt hätten ... face-wink

[Edit] Vermutlich am ehesten das, was Du suchst:
http://www.serverwatch.com/tutorials/article.php/1476791/Inventory-of-D ... [/Edit]

Grüße
bastla

vielleicht hilft dir das weiter
liebe Grüße, drnatur
bastla
bastla 29.01.2013 um 15:07:54 Uhr
Goto Top
... wobei allerdings dieser "Scripting Guys"-Artikel besser zum Thema passt ...

Grüße
bastla
hansis1
hansis1 29.01.2013 aktualisiert um 15:52:20 Uhr
Goto Top
Hallo

Das Programm hilft mir leider nichts.
Ich muss eben aus einer Verteilergruppe alle Benutzer auslesen. Da es allerdings in dieser Verteilergruppe wieder Verteilergruppen gibt ist es gar nicht so einfach.
Bei den Skripten bin ich bis jetzt auch noch nicht weitergekommen.
colinardo
colinardo 29.01.2013, aktualisiert am 30.01.2013 um 10:20:20 Uhr
Goto Top
Vielleicht hilft Dir ein Powershell-Script nach folgendem Rezept:
Dies listet für jede Verteilergruppe die effektiv beinhalteten User auf.
Du musst noch in der ersten Zeile unter -Searchbase deine Daten eintragen.
$groups = Get-ADGroup -Filter {GroupCategory -eq 'Distribution'} -SearchBase "OU=Test,DC=YOURDOMAIN,DC=local"   

foreach ($group in $groups){
	write-host ----- Gruppenname: $group.Name -----
	$users = Get-ADGroupMember -Identity $group.Name -recursive
	foreach ($user in $users){
		write-host $user.Name
	}

}
hansis1
hansis1 30.01.2013 um 13:03:34 Uhr
Goto Top
thx for all.
i will try it.
Skully
Skully 16.02.2015 um 15:37:32 Uhr
Goto Top
Zitat von @colinardo:

Vielleicht hilft Dir ein Powershell-Script nach folgendem Rezept:
Dies listet für jede Verteilergruppe die effektiv beinhalteten User auf.
Du musst noch in der ersten Zeile unter -Searchbase deine Daten eintragen.
> $groups = Get-ADGroup -Filter {GroupCategory -eq 'Distribution'} -SearchBase "OU=Test,DC=YOURDOMAIN,DC=local"  
> 
> 
> foreach ($group in $groups){
> 	write-host ----- Gruppenname: $group.Name -----
> 	$users = Get-ADGroupMember -Identity $group.Name -recursive
> 	foreach ($user in $users){
> 		write-host $user.Name
> 	}
> 
> }
> 

Hi colinardo,

kannst Du mir noch einen Tipp geben wie ich das Ganze in ne CSV exportiert bekomme?

Hab soeben Verwendung für deine Abfrage gefunden, mir fehlt nur noch die Möglichkeit das Ganze zu exportieren.

Gruß

weasel
colinardo
colinardo 17.02.2015 aktualisiert um 16:01:17 Uhr
Goto Top
Zitat von @Skully:
kannst Du mir noch einen Tipp geben wie ich das Ganze in ne CSV exportiert bekomme?
Hallo weasel,
kein Thema:
$data = @()
$groups = Get-ADGroup -Filter {GroupCategory -eq 'Distribution'} -SearchBase "OU=Test,DC=YOURDOMAIN,DC=local"   
$groups | %{
    $users = (Get-ADGroupMember -Identity $_.Name -recursive | select -ExpandProperty Name) -join ","  
    $data += New-Object PSObject -Property @{"Gruppe"=$_.Name;"Benutzer"=$users}  
}
$data | export-csv 'C:\groupmembers.csv' -Delimiter ';' -NoType -Encoding UTF8  
Grüße Uwe
Skully
Skully 17.02.2015 aktualisiert um 17:34:20 Uhr
Goto Top
Hallo Uwe

hat geklappt.

Das läuft also über ein Array, wenn ich das richtig interpretiere.


Sänk ju weri matsch - wie der Engländer sagt face-smile


Grüße Stephen