lima-city: Webhosting, Domains und Cloud
2 Pluspunkte 0 Minuspunkte
Wie kann ich eine Liste an Gruppen generieren in denen ein AD User Mitglied ist wenn die Gruppen auch wieder Mitglieder anderer Gruppen sein können?
von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

Hier ist ein Powershell-Script, dass dir ale Mitgliedschaften eines Benutzer inklusive der verschachtelten Mitgliedschaften anzeigt.

$global:i = 1

function GetNestedADGroupMembership {

    Param(
        [parameter(Mandatory = $true)] 
        [string]$user,

        [parameter(Mandatory = $false)] 
        [hashtable]$grouphash = @{},

        [parameter(Mandatory = $false)] 
        [string]$via = "direkte Mitgliedschaft"
    )

    $groups = @(Get-ADPrincipalGroupMembership -Identity $user | Select-Object -ExpandProperty DistinguishedName)

    foreach ($group in $groups) {

        if ($grouphash[$group] -eq $null) {

            $grouphash[$group] = $true
            $groupname = ($group -Split ',')[0] -Replace '^CN=', ''
            $grouptype = (Get-ADGroup -Filter * -Properties GroupCategory | Where-Object { $_.Name -eq ($groupname -Replace '\\', '') }).GroupCategory

            if($grouptype -eq "Security") { 

                $out = "$($global:i) : $groupname"

                if($via -ne "direkte Mitgliedschaft") {
                    $out += " <= $via"
                } 

                Write-Host $out

                $global:i++

            }

            if ((Get-ADObject -Identity $group).ObjectClass -eq "group") {
                GetNestedADGroupMembership -user $group -grouphash $grouphash -via $groupname
            }

        }

    }

}

GetNestedADGroupMembership "Testuser"
von (714 Punkte)  
Super, danke. Kann ich zusätzlich bei den nested Groups noch anzeigen durch welche Gruppe der Benutzer in einer verschachtelten Gruppe Mitglied ist? LG
Ich habe das Script angepasst.
Diese Community basiert auf dem Prinzip der Selbstregulierung. Beiträge werden von Nutzern erstellt, bewertet und verbessert – ganz ohne zentrale Moderation.

Wer hilfreiche Fragen stellt oder gute Antworten gibt, sammelt Punkte. Mit steigender Punktzahl erhalten Mitglieder automatisch mehr Rechte, zum Beispiel

  • Kommentare verfassen
  • Beiträge bewerten
  • Inhalte bearbeiten
  • Inhalte ausblenden

So entsteht eine Plattform, auf der sich Qualität durchsetzt – getragen von einer engagierten Gemeinschaft. Unser Ziel: Guter Inhalt. Für alle.

2.3k Fragen

2.8k Antworten

260 Kommentare

12 Nutzer