diff --git a/Active-Directory/README.md b/Active-Directory/README.md new file mode 100644 index 0000000..0348bc0 --- /dev/null +++ b/Active-Directory/README.md @@ -0,0 +1,78 @@ +# import_User_to_group.ps1 + +PowerShell GUI-Tool zum Importieren von Benutzern aus einer CSV-Datei in eine Active Directory Gruppe. + +## Voraussetzungen + +| Anforderung | Details | +|---|---| +| PowerShell | 5.1 oder neuer | +| ActiveDirectory-Modul | Wird automatisch installiert (RSAT), falls nicht vorhanden | +| Berechtigungen | Normaler Benutzer reicht aus – Adminrechte werden **nur** benötigt, wenn das ActiveDirectory-Modul noch nicht installiert ist | + +## CSV-Format + +Die CSV-Datei muss eine Spalte namens `Username` **oder** `SamAccountName` enthalten: + +```csv +Username +jdoe +mwende +asmith +``` + +Weitere Spalten in der CSV werden ignoriert. Leere Zeilen werden automatisch übersprungen. + +## Verwendung + +### GUI starten + +```powershell +.\import_User_to_group.ps1 +``` + +### Optionaler Parameter + +```powershell +# Eigenen Log-Pfad angeben +.\import_User_to_group.ps1 -LogPath "C:\Logs\mein_import.txt" +``` + +### GUI-Bedienung + +1. **Browse** – CSV-Datei auswählen +2. **Load Groups** – alle AD-Gruppen laden und in der Dropdown-Liste anzeigen (mit Autovervollständigung); alternativ Gruppenname direkt eintippen +3. **Import Users** – Import starten + +## Verhalten beim Import + +| Situation | Aktion | +|---|---| +| Benutzer erfolgreich hinzugefügt | Eintrag in der Ausgabe (weiss) | +| Benutzer bereits Mitglied der Gruppe | Wird übersprungen (gelb) | +| Benutzer nicht in AD gefunden | Wird übersprungen (gelb) | +| Fehler beim Hinzufügen | Fehlermeldung (rot), restliche Benutzer werden weiter verarbeitet | + +Am Ende wird eine Zusammenfassung angezeigt: +``` +Done. Added: 5 | Skipped: 2 | Not found: 1 | Errors: 0 +``` + +## Logging + +Jeder Lauf erzeugt automatisch eine Log-Datei im selben Verzeichnis wie das Skript: + +``` +import_log_20260618_143022.txt +``` + +Der Pfad zur Log-Datei wird in der Statusleiste der GUI angezeigt. + +## Automatische RSAT-Installation + +Falls das ActiveDirectory-Modul fehlt, versucht das Skript die automatische Installation: + +- **Windows Server** – `Add-WindowsFeature RSAT-AD-PowerShell` +- **Windows 10/11** – `Add-WindowsCapability` (RSAT optionales Feature) + +Dafür sind Adminrechte erforderlich. Ohne Adminrechte bricht das Skript mit einem klaren Hinweis ab.