145963
Goto Top

Powershell Abfrage nach Gruppe und Untergruppe und deren Mitglieder

Guten Tag Administratoren,

Diese Frage kam bestimmt schon oft, aber ich habe leider noch keine Fotos dabei gesehen.
Darum hab ich von unserem Active Directory 2 Fotos gemacht und habe bezüglich der PS
damit eine Frage, die wahrscheinlich schon oft vorkam, aber ich und vll manche andere
anhand der Fotos besser nachvollziehen können.

Bild Gruppen sind die Gruppen, die gleich unter der Domäne angelegt sind.
Bild Gruppen2 ist ein Ausschnitt aus der Gruppe Verwaltung.


1. Wie kann ich mit Powershell jetzt explizit nach der Gruppe Verwaltung abfragen?
2. Wie kann ich mit PS auch die darunterliegenden Gruppen abfragen?
3. Wie kann ich mit PS nun auch nach den Mitgliedern dieser Gruppen abfragen?
z.B. alle Mitglieder aus der Gruppe "Verwaltung"?


Gruß Alderson
gruppen2
gruppen

Content-Key: 604603

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

Ausgedruckt am: 28.03.2024 um 17:03 Uhr

Mitglied: chkdsk
chkdsk 15.09.2020 aktualisiert um 11:51:06 Uhr
Goto Top

Guten Tag Administratoren,

Moin

1. Wie kann ich mit Powershell jetzt explizit nach der Gruppe Verwaltung abfragen?
2. Wie kann ich mit PS auch die darunterliegenden Gruppen abfragen?
3. Wie kann ich mit PS nun auch nach den Mitgliedern dieser Gruppen abfragen?
z.B. alle Mitglieder aus der Gruppe "Verwaltung"?

Get-ADGroupMember ist dein Freund
Mitglied: NordicMike
Lösung NordicMike 15.09.2020 aktualisiert um 11:56:00 Uhr
Goto Top
Guten Tag Administratoren,
Moin moin

Diese Frage kam bestimmt schon oft, aber ich habe leider noch keine Fotos dabei gesehen.
Das wird wohl daran liegen, weil Administratoren mit Texten arbeiten und nicht mit Bildern.

1. Wie kann ich mit Powershell jetzt explizit nach der Gruppe Verwaltung abfragen?
Get-ADUser -Filter { Name -Like "*" -and Enabled -eq $true } -Searchbase "OU=accounts,OU=usa,DC=test,DC=com" | Where-Object {($_.name -notlike "test*") -and ($_.name -notlike "*_c1")} | sort name | ft name  

Den Rest kannst du dir durchs durchlesen de Get- Befehle erarbeiten :c)
Mitglied: 145963
145963 15.09.2020 aktualisiert um 12:16:50 Uhr
Goto Top
Hallo,

@chkdsk
will echt nicht unhöflich sein, aber für so eine Antwort hab ich hier nicht die Frage gestellt.
Das hab ich bestimmt auch schon mit Google rausgefunden.

Ein Beispiel-Befehl, der sich anhand meiner Bilder orientiert hätte, hätte ich jetzt hier
erwartet. Danke
Mitglied: chkdsk
chkdsk 15.09.2020 um 12:29:18 Uhr
Goto Top
Anhand deiner Bilder geht das aber leider nicht, da wichtige Informationen fehlen.

Wie @NordicMike bereits in seinem Skript angedeutet hat, kennen wir deine Struktur nicht
-Searchbase "OU=accounts,OU=usa,DC=test,DC=com"   
Mitglied: NordicMike
NordicMike 15.09.2020 um 13:09:27 Uhr
Goto Top
Selbst, wenn wir die Struktur kennen würde, erwartet er wohl ein Bild.

Der kommt bestimmt von Facebook her rüber hier her...
Mitglied: 145963
145963 15.09.2020 um 14:38:47 Uhr
Goto Top
Zitat von @chkdsk:

Anhand deiner Bilder geht das aber leider nicht, da wichtige Informationen fehlen.

Wie @NordicMike bereits in seinem Skript angedeutet hat, kennen wir deine Struktur nicht
> -Searchbase "OU=accounts,OU=usa,DC=test,DC=com"   
> 


Dann hab ich eine Frage zu dem Parameter wenn ich das richtig interpretiere.
-Searchbase was sagt der genau aus?
Mitglied: NordicMike
NordicMike 15.09.2020 um 14:43:53 Uhr
Goto Top
Das steht in der allgemeinen Beschreibung des aufgerufenen Befehls.

https://docs.microsoft.com/en-us/powershell/module/addsadministration/ge ...
Mitglied: chkdsk
chkdsk 15.09.2020 um 14:45:19 Uhr
Goto Top
Das ist die Angabe des Containers. Im AD, Rechtsklick auf deine Gruppe -> Object -> Object DN
Mitglied: 145963
145963 15.09.2020 aktualisiert um 17:00:31 Uhr
Goto Top
Hallo, hab jetzt einen Beispielbefehl aus

https://docs.microsoft.com/en-us/powershell/module/addsadministration/ge ...

aus Example 4 verwendet, ohne Properties und dem Rest. Bekomme nun folgende Fehlermeldung:

PS Y:\> Get-ADUser -Filter "Name -like '*fr*'" -SearchBase "DC=NDDOM1"

Get-ADUser : Der bereitgestellte definierte Name muss einer der folgenden Partitionen zugeordnet sein:
"DC=NDDOM1,DC=LOCAL , CN=Configuration,DC=NDDOM1,DC=LOCAL ,
CN=Schema,CN=Configuration,DC=NDDOM1,DC=LOCAL , DC=DomainDnsZones,DC=NDDOM1,DC=LOCAL ,
DC=ForestDnsZones,DC=NDDOM1,DC=LOCAL".
In Zeile:1 Zeichen:1

back-to-topGet-ADUser -Filter "Name -like '*fr*'" -SearchBase "DC=NDDOM1"

back-to-top~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : InvalidArgument: (face-smile [Get-ADUser], ArgumentException
+ FullyQualifiedErrorId : ActiveDirectoryCmdlet:System.ArgumentException,Microsoft.ActiveDirectory
.Management.Commands.GetADUser

Jetzt meine Frage dazu: Der bereitgestellte definierte Name muss einer der folgenden Partitionen zugeordnet sein. Was
soll das genau bedeuten? Kann mir das jemand auf Deutsch sagen, bin auch des Englischen nicht so mächtig.

Gruß Alderson

Nachtrag: Habe soeben den Aufbau von Distinguishedname verstanden. Er beginnt sozusagen von hinten her.
Wer in der ActiveDirectory den Benutzer sieht, in welcher Gruppe, dann in welcher Gruppe diese Gruppe sich befindet
bis man sich hochgearbeitet hat bis zur Domäne. Wenn mir das jemand gleich gesagt hätte, wer es viel einfacher
zu verstehen gewesen. Erstmal muss man ja den Aufbau eines Namens verstehen. Oder steht das irgendwo in der
Doku wo ich es noch nicht gelesen habe?
Mitglied: erikro
Lösung erikro 15.09.2020 um 21:58:44 Uhr
Goto Top
Moin,

erstmal, das sind keine Gruppen, sondern Organisationseinheiten. Jedenfalls sieht Dein Bild so aus. Was hier fehlt, sind die oberen Ebenen des AD (Domain und Gesamtstruktur). Aber gut. Nennen wir das mal klassisch acme.com. face-wink Weiter gehe ich mal davon aus, dass es eine übergeordente OU acme gibt. Dann sucht man alle User der OU Verwaltung mit dem Befehl:

Get-ADUser -filter * -SearchBase "ou=verwaltung,ou=acme,dc=acme,dc=com" |sort userprincipalname | export-csv users.csv -encoding utf8 -notypeinformation  

-filter * heißt, dass es alle sind.
-SearchBase weist den Befehl an, wo er anfangen soll. Die unterste Ebene muss zuerst genannt werden und darauf folgend alle darüberliegenden Ebenen in der richtigen Reihenfolge. Sonst wird das nichts.
| schickt die Ausgabe an sort, was das Ganze hübsch nach Usernamen sortiert.
Dann noch eine Pipe (|), um das Ganze an export-csv zu übergeben, damit wir das hinterher z. B. in Excel lesen können.

hth

Erik
Mitglied: 145963
145963 16.09.2020 um 10:28:53 Uhr
Goto Top
Danke Dir. So eine gute Antwort bringt einen weiter.
Mitglied: chkdsk
chkdsk 16.09.2020 um 10:34:31 Uhr
Goto Top
Ähnliches hat doch aber @NordicMike schon geschrieben
Mitglied: erikro
erikro 16.09.2020 um 20:01:00 Uhr
Goto Top
Zitat von @chkdsk:

Ähnliches hat doch aber @NordicMike schon geschrieben


Deshalb hat er ja auch ein grünes Schildchen. face-wink Ich habe es nur ein wenig genauer erläutert, weil die Zeile und die darauffolgende Fehlermeldung des TO zeigte, dass der LDAP-Pfad nicht verstanden wurde und ich gerade Bock hatte. face-wink