scripts/AD_USER_CREATE.ps1 aktualisiert

This commit is contained in:
2024-11-08 08:52:41 +01:00
parent 28169e10dd
commit f5c011000b

View File

@@ -6,7 +6,6 @@ if (-not $myPrincipal.IsInRole([System.Security.Principal.WindowsBuiltInRole]::A
Start-Process powershell -ArgumentList $arguments -Verb runAs Start-Process powershell -ArgumentList $arguments -Verb runAs
Exit Exit
} }
Add-Type -AssemblyName System.Windows.Forms Add-Type -AssemblyName System.Windows.Forms
Import-Module ActiveDirectory Import-Module ActiveDirectory
@@ -178,6 +177,8 @@ $okButton.Add_Click({
$password = $masterPassword $password = $masterPassword
} }
$groupOU = $masterGroupOUComboBox.SelectedItem
# Überprüfen, ob notwendige Felder ausgefüllt sind # Überprüfen, ob notwendige Felder ausgefüllt sind
if (-not $firstName -or -not $lastName) { if (-not $firstName -or -not $lastName) {
$missingField = if (-not $firstName) { "Vorname" } elseif (-not $lastName) { "Nachname" } $missingField = if (-not $firstName) { "Vorname" } elseif (-not $lastName) { "Nachname" }
@@ -199,13 +200,13 @@ $okButton.Add_Click({
# Benutzer erstellen, falls er nicht existiert # Benutzer erstellen, falls er nicht existiert
try { try {
New-ADUser -Name "$firstName $lastName" ` New-ADUser -Name "$firstName $lastName" `
-GivenName "$firstName" ` -GivenName "$firstName" `
-Surname "$lastName" ` -Surname "$lastName" `
-SamAccountName "$username" ` -SamAccountName "$username" `
-UserPrincipalName "$email" ` -UserPrincipalName "$email" `
-AccountPassword (ConvertTo-SecureString $password -AsPlainText -Force) ` -AccountPassword (ConvertTo-SecureString $password -AsPlainText -Force) `
-Enabled $true ` -Enabled $true `
-Path "$ou" -Path "$ou"
$outputTextBox.SelectionColor = 'Green' $outputTextBox.SelectionColor = 'Green'
$outputTextBox.AppendText("Benutzer $username wurde erfolgreich erstellt.`r`n") $outputTextBox.AppendText("Benutzer $username wurde erfolgreich erstellt.`r`n")
@@ -218,16 +219,17 @@ $okButton.Add_Click({
} }
else { else {
# Erfolgsnachricht für vorhandenen Benutzer # Erfolgsnachricht für vorhandenen Benutzer
$outputTextBox.SelectionColor = 'Green' $outputTextBox.SelectionColor = 'RED'
$outputTextBox.AppendText("Benutzer $username existiert bereits.`r`n") $outputTextBox.AppendText("Benutzer $username existiert bereits.`r`n")
$outputTextBox.AppendText("Fehlerdetails: $_`r`n")
} }
# Gruppenzuordnung durchführen, auch wenn der Benutzer schon existiert # Gruppenzuordnung durchführen, auch wenn der Benutzer schon existiert
if ($globalGroup) { if ($globalGroup) {
# Gruppen-OU immer auf die Master-OU setzen # Gruppen-OU immer auf die Master-OU setzen
$groupOU = $masterGroupOUComboBox.SelectedItem
try { try {
# Überprüfen, ob die Gruppe existiert # Überprüfen, ob die Gruppe existiert
$groupOU = $masterGroupOUComboBox.SelectedItem
$group = Get-ADGroup -Filter { Name -eq $globalGroup } $group = Get-ADGroup -Filter { Name -eq $globalGroup }
try { try {
# Gruppe erstellen, falls sie nicht existiert # Gruppe erstellen, falls sie nicht existiert