derwowusste
Goto Top

Kann sich jemand diese Ausgabe von get-adgroup erklären?

Servus!

Das folgende Powershellkommando soll leere AD Security groups auflisten:
Get-ADGroup -Filter 'GroupCategory -eq "Security"' -properties members -SearchBase "DC=mydom,DC=local" | where {-not $_.members} | select Name, GroupCategory | ft -autosize  
listet seltsamerweise neben diversen in der Tat leeren Gruppen auch die nicht-leeren Gruppen "Domänen-Benutzer" und "Domänencomputer" auf.
Ausgeführt auf dem DC, Server 2016 - selbes Resultat auf Windows 10 1803 samt RSAT.

Wer kann sich das erklären, oder es gar bei sich nachstellen?

Content-Key: 383230

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

Printed on: April 20, 2024 at 10:04 o'clock

Member: Th0mKa
Solution Th0mKa Aug 13, 2018 updated at 12:01:33 (UTC)
Goto Top
Moin,

Weil die primäre Gruppe im "PrimaryGroup" Attribut gespeichert wird und nicht im "memberOf", die gruppen sind also aus Powershell Sicht leer.
Wäre jetzt meine Vermutung ohne Kenntnis eurer Umgebung...

VG,

Thomas
Member: emeriks
emeriks Aug 13, 2018 at 12:19:02 (UTC)
Goto Top
Hi,
wie @tkr104 schreibt.
Nur, dass es nicht das "memberOf" Attribut ist, sondern natürlich das "member".

Das kannst Du testen.
Füge einen Benutzer einer 2. Gruppe hinzu. Setze diese als seine Primärgruppe. Zähle jetzt nocheinmal die "Domänen-Benutzer".

E.
Member: emeriks
Solution emeriks Aug 13, 2018 at 12:23:35 (UTC)
Goto Top
Wenn Du die Mitglieder der Domänen-Benutzer haben willst, dann a) die "member" zählen plus b) alle Benutzer und Computer mit "primaryGroupId" = 513 bzw. 515

Streng genommen müsste man das immer so zählen. Auch wenn die Wahrscheinlichkeit sehr gering ist, dass jemand die Primärgruppe ändert.
Member: colinardo
Solution colinardo Aug 13, 2018 updated at 12:32:15 (UTC)
Goto Top
So iss et ... stattdessen nehme man z.B.
Get-ADGroup -Filter 'GroupCategory -eq "Security"' -SearchBase "DC=mydom,DC=local" | ?{(Get-ADGroupMember $_ -Recursive).Count -eq 0} | ft name,GroupCategory  
In dem Fall wird die Mitgliedschaft der User rekursiv aufgelöst. Willst du das nicht, nehme den Parameter (-Recursive bei Get-ADGroupMember) raus.

Grüße Uwe
Member: DerWoWusste
DerWoWusste Aug 13, 2018 at 12:29:23 (UTC)
Goto Top
Ahhh...sehr guter Einwand.

@emeriks: kannst Du mir bei der Syntax zur Umsetzung helfen? Ich wollte lediglich alle leeren Gruppen auflisten.
Member: DerWoWusste
DerWoWusste Aug 13, 2018 at 12:32:28 (UTC)
Goto Top
Ah, da ist auch Uwe schon, der immer alles in Sachen Powershell aus dem Ärmel schüttelt... face-smile
Ja, das funktioniert dann wie erwartet.

DANKE