rmw-home
Goto Top

Mit Powershell mehrere Active Directory Gruppen auslesen und die Gruppenmember in Datei ausgeben

Servus,

ich fummele gerade an einer Aufgabe:

1. Finde alle Gruppen einer Active Directory Domäne welche einen bestimmten Namensbestandteil haben
2. Liste die Gruppenmitglieder in einer Datei. Formatiert nach Username, DisplayName und Mailadresse
3. Da es mehrere Gruppen mit dem gleichen Namensbestandteil gibt, und Benutzer in mehreren Gruppen Mitglied sein können soll die Liste darüber Auskunft geben.
Beispielsweise Username Displayname Mailadresse Gruppenname
User1 User1,name 1@1.de Gruppe 1
User1 User1,name 1@1.de Gruppe 5
User1 User1,name 1@1.de Gruppe 7
User2 User2,name 2@1.de Gruppe 1
und so weiter....

Bisher bin ich so vorgegangen:
Import-module ActiveDirectory
#Gruppennamen in Variable Laden
$array = Get-Adgroup -filter {name -like "GruppeXX*"} | select –exp Name

Dies liefert mir als Ergebnis der Variablen $Array 56 Gruppennamen

#Gruppenmitglieder in Datei exportieren
foreach ($element in $Array) { Get-ADGroupMember -Identity $element | Get-Aduser -Properties name, DisplayName, Mail | Select-Object name, DisplayName, Mail >> C:\Scripte\2017\Januar\GruppenMitglieder.txt}

Dies liefert mir eine Datei welche die Gruppenmitglieder wie gewünscht in 3 Spalten mit den gewünschten Inhalten ausgibt. Dann aber nach den Gruppenmitgliedern der gruppe 1 drei Leerzeilen
einfügt und wieder mit dem Inhalt der nächsten Gruppe weitermacht :

name DisplayName Mail
----------- ----
xxxxxx xxxxxxx Email@Email.de
xxxxxx xxxxxxx Email@Email.de
xxxxxx xxxxxxx Email@Email.de
xxxxxx xxxxxxx Email@Email.de


name DisplayName Mail
----------- ----
xxxxxx xxxxxxx Email@Email.de
xxxxxx xxxxxxx Email@Email.de
xxxxxx xxxxxxx Email@Email.de
xxxxxx xxxxxxx Email@Email.de

Wie bekomme ich hin, dass der Gruppenname ebenfalls in die Liste eingetragen wird. Am besten wie oben beschrieben als 4 Tabellenfeld

Gruß

Rainer

Content-Key: 325776

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

Ausgedruckt am: 19.03.2024 um 03:03 Uhr

Mitglied: 131381
Lösung 131381 07.01.2017 aktualisiert um 13:36:59 Uhr
Goto Top
War alles schon da...
AD User auslesen und in Datei mit Logo abspeichern
Get-ADGroup -Filter {Name -like 'GruppeXX*'} -pipelinevariable group | %{  
    Get-ADGroupMember $_ -Recursive | Get-ADUser -Properties Mail,DisplayName | select Name,DisplayName,Mail,@{n='Group';e={$group.Name}} -Unique  
} | ft -GroupBy Group
Gruß mik