Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mit Get-ADGroupmember Befehl mehrere AD-Gruppen ausgeben

Frage Microsoft Windows Server

Mitglied: makaroni

makaroni (Level 1) - Jetzt verbinden

12.01.2015, aktualisiert 11:57 Uhr, 3973 Aufrufe, 7 Kommentare

Hallo zusammen,

ich habe ein kleines Problem beim Auslesen via Powershell von Usern aus Gruppen aus einer Active Directory.

Folgenden Befehl nutze ich unter Anderem:

01.
Get-ADGroupMember -Recursive $AD_Group -Server $Server
Soweit klappt auch alles. Nun möchte ich gerne die GroupMember aus zwei unterschiedlichen Gruppen auslesen.

01.
Get-ADGroupMember -Recursive $AD_Group1, $AD_Group2 -Server $Server
funktioniert leider nicht.

Vielen Dank
Mitglied: 114757
LÖSUNG 12.01.2015, aktualisiert um 11:57 Uhr
01.
get-adgroup -Server $Server -Filter * | ?{$_.Name -eq $AD_Group1 -or $_.Name -eq $AD_Group2} | Get-AdGroupmember -Recursive -Server $Server
Gruß jodel32
Bitte warten ..
Mitglied: makaroni
12.01.2015, aktualisiert um 13:55 Uhr
Ich benötige noch einmal deine Hilfe:
01.
$AD_Group1 = "Internet" 
02.
$AD_Group2 = "" 
03.
$AD_Group3 = "" 
04.
$AD_Group4 = "" 
05.
$AD_Group5 = "" 
06.
 
07.
 
08.
$all = @()  
09.
$all += Get-ADGroup -Server $Server -Filter * | ?{ $_.Name -eq $AD_Group1 -or $_.Name -eq $AD_Group2 -or $_.Name -eq $AD_Group3 -or $_.Name -eq $AD_Group4 -or $_.Name -eq $AD_Group5 -or $_.Name -eq $AD_Group6 } | Get-ADGroupMember -Recursive -Credential $cred 
10.
#$all += Get-ADGroup -Server $Server -Filter * | ?{ $_.Name -eq $AD_Group1 -or $_.Name -eq $AD_Group2 -or $_.Name -eq $AD_Group3 -or $_.Name -eq $AD_Group4 -or $_.Name -eq $AD_Group5 -or $_.Name -eq $AD_Group6 } | Get-ADGroupMember | ?{$_.objectClass -eq "group"} | Get-ADGroupMember -Recursive -Credential $cred 
11.
 
So habe ich mir das nun zusammengebastelt. Auf dem einen Server läuft es soweit durch und funktioniert, auf dem anderen hingegen leider nicht. Mach ich irgendwas falsch? Es wird auch keine Fehlermeldung ausgegeben. Ich möchte gerne bis zu fünf Gruppen auslesen können. Wenn ich hingegen nur eine Gruppe auslesen möchte, reicht es dann wenn in den anderen nichts steht oder werden dann fehlerhafte Daten ausgeworfen?
Bitte warten ..
Mitglied: 114757
LÖSUNG 12.01.2015, aktualisiert um 14:59 Uhr
Die Variable $AD_Group6 existiert in deinem Code nicht ... und du gibst beim letzten Befehl in der Pipeline den Servernamen nicht mit...

Das ganze lässt sich alternativ flexibler so machen, alle Gruppen in ein Array schreiben und dann darüber iterieren:
01.
$all = @() 
02.
$gruppen = @("Gruppe1","Gruppe2","Gruppe3") 
03.
$gruppen | %{$all += Get-ADGroupMember $_ -Recursive -Server $Server -Credential $cred -EA SilentlyContinue}
Bitte warten ..
Mitglied: makaroni
20.01.2015, aktualisiert um 14:29 Uhr
Ich habe noch eine kleine Frage.

ich möchte mir gerne die Benutzer Plus die darin erhaltene Gruppe ausgeben lassen

01.
$all | select -Unique | %{$text += ($_.SamAccountName + $gruppen )} 
Den Accountnamen kann ich mir anzeigen lassen, nur die Gruppen werden beide zusammen, was ja auch korrekt ist, ausgegeben.
Ich möchte es allerdings gerne wie folgt haben:

User 1 Internet1
User 1 Internet2
User 2 Internet1
User 3 Internet2

Wie kann ich das filtern?
Bitte warten ..
Mitglied: 114757
20.01.2015, aktualisiert um 19:11 Uhr
ich sag nur .memberOf Attribut des Users
Und lerne erst mal Powershell vernünftig anstatt hier das Forum mit solchen Banalitäten vollzuknallen.
http://www.microsoftvirtualacademy.com/training-courses/using-powershel ...
Bitte warten ..
Mitglied: makaroni
21.01.2015 um 08:50 Uhr
Ja das ist mir bewusst, dann bekomme ich aber alle Gruppen, in dem der Nutzer ist.
Ich lese Benutzer aus den Gruppen x und y aus.
Nun möchte ich gerne die Benutzer so anzeigen lassen, dass Benutzername und nur die Gruppe x oder y angezeigt wird.

Beispiel:

Gruppen = x,y

Benutzer Harald ist in der Gruppe x
Benutzer Ingo in der x und y Gruppe
Benutzer Paul in der y Gruppe

Ausgabe:

Harald x
Ingo x
Ingo y
Paul y

Es sollen also nicht die kompletten Gruppen ausgelesen werden, sondern lediglich die, nach denen ich gerade suche.
Nutze ich das Array bekomme ich als Ausgabe:

Harald x
Ingo x y
Paul y
Bitte warten ..
Mitglied: 114757
LÖSUNG 21.01.2015, aktualisiert um 09:19 Uhr
01.
$gruppen = @("Gruppe1","Gruppe2","Gruppe3") 
02.
foreach($group in $gruppen){ 
03.
    Get-ADGroupMember $group -Recursive -Server $Server -Credential $cred -EA SilentlyContinue | %{write-host "$($_.SamAccountname) : $group"} 
04.
}
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
Mehrere AD Benutzer aus CSV Datei mit PowerShell erstellen (1)

Frage von windelterrorist zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell Script zum verschachteln von AD Gruppen Domain Übergreifend (1)

Frage von Lukas4580 zum Thema Batch & Shell ...

VB for Applications
Mehrere Spalten Durchsuchen und Ergebnisse in neuer Tabelle Ausgeben (3)

Frage von Mr.Green zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...