Skip to content

SnowTheOne/Get-ADGroupUserMatrix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

Get-ADGroupUserMatrix.ps1

AD Gruppen-User-Matrix Analyse

Dieses PowerShell-Skript dient zur Analyse von Active-Directory-Gruppenmitgliedschaften für definierte Benutzergruppen oder Benutzerlisten.

Ziel ist es, gemeinsame Gruppen, Ausreißer und Rollengruppen-Kandidaten transparent darzustellen und datenbasiert Rollenmodelle (RBAC) abzuleiten.

Das Ergebnis ist eine Gruppen-User-Matrix inklusive Relevanzkennzahlen, ideal für IAM-, Audit- und Berechtigungsprojekte.


🧩 Funktionsumfang

  • Verarbeitung von:
    • einer AD-Gruppe oder
    • einer manuellen Benutzerliste
  • Ermittlung aller Security-Gruppenmitgliedschaften
  • Aufbau einer Matrix: Gruppe × Benutzer
  • Automatische Berechnung von:
    • MemberCount -- Anzahl Benutzer pro Gruppe
    • CoveragePct -- Abdeckung in Prozent
    • Relevance -- High / Medium / Low
  • Flexible Benutzer-Ausschlussmechanismen
  • Ausschluss irrelevanter Gruppen (z. B. Default- oder Infrastrukturgruppen)
  • Export nach CSV (Excel-geeignet)

📋 Voraussetzungen

  • Windows PowerShell 5.1 oder höher
  • RSAT / ActiveDirectory-Modul
  • Leserechte im Active Directory
Import-Module ActiveDirectory

🚀 Schnellstart

  1. Repository klonen
  2. Skript öffnen und Konfiguration anpassen
  3. Skript ausführen
  4. CSV-Export in Excel auswerten

⚙️ Konfiguration

🔹 Benutzerquelle

Option A: Benutzer aus AD-Gruppe

$SourceGroup    = "TEAM-FINANCE"
$UseSourceGroup = $true

Option B: Manuelle Benutzerliste

$UseSourceGroup = $false

$ManualUsers = @(
    "user1",
    "user2",
    "user3"
)

🚫 Benutzer ausschließen (optional & kombinierbar)

1️⃣ Explizite Ausschlussliste

$ExcludedUsers = @(
    "svc_backup",
    "svc_sap",
    "user_old"
)

2️⃣ Naming Convention / Regex

$ExcludeUserPattern = "^(svc_|adm_|ext_)"

3️⃣ Nur aktive Benutzer berücksichtigen

$OnlyEnabledUsers = $true

🧹 Gruppenfilter

$ExcludeGroupPattern = "Domain Users|Printer|VPN|WLAN|Default"

📊 Ergebnis: Gruppen-User-Matrix

Group user1 user2 user3 MemberCount CoveragePct Relevance
APP_SAP X X X 3 100 High
FILE_FINANCE X X 2 66.67 Medium
PRINTER_XY X 1 33.33 Low

📤 Export

$ExportPath = ".\AD_Gruppen_User_Matrix.csv"

🏗️ Typische Use Cases

  • Rollenmodell-Definition (RBAC)
  • Bereinigung historisch gewachsener Gruppen
  • IAM- & Audit-Projekte

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published