From c061198330cbf2a283fe92cc257d778f9cfc73d3 Mon Sep 17 00:00:00 2001 From: max Date: Thu, 24 Apr 2025 08:47:29 +0000 Subject: [PATCH] =?UTF-8?q?create=5Flocaluser=5Ffrom=5Fazure.ps1=20hinzuge?= =?UTF-8?q?f=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- create_localuser_from_azure.ps1 | 60 +++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 create_localuser_from_azure.ps1 diff --git a/create_localuser_from_azure.ps1 b/create_localuser_from_azure.ps1 new file mode 100644 index 0000000..7d8dcf1 --- /dev/null +++ b/create_localuser_from_azure.ps1 @@ -0,0 +1,60 @@ +cls +# Anmelden bei Azure AD +Connect-AzureAD +Import-Module ActiveDirectory + +$AzureADUsers = "" +# Benutzer aus Azure AD abrufen + +$Container = "CN=Users,DC=khan,DC=at" +$localDomain = "khan.at" + +#Alle User +#$AzureADUsers = Get-AzureADUser -All $true -Filter "UserType eq 'Member'" + +#Single User +#$AzureADUsers = get-azureaduser -all $true -filter "startswith(userprincipalname,'username')" + + + +foreach ($user in $AzureADUsers) { + +$SamAccountName = $user.UserPrincipalName.Split('@')[0] +#Write-Host $SamAccountName +$existingUser = Get-ADUser -Filter "SamAccountName -eq '$SamAccountName'" -ErrorAction SilentlyContinue +#Write-host $SamAccountName +Write-host $user + + if (-not $existingUser) { + + $ADUserParameters = @{ + Name = $user.DisplayName + DisplayName = $user.DisplayName + GivenName = $user.GivenName + Surname = $user.Surname + EmailAddress = $user.Mail + Path = $Container + SamAccountName = $SamAccountName + UserPrincipalName = $user.UserPrincipalName + AccountPassword = ConvertTo-SecureString "Fona627439" -AsPlainText -Force + Enabled = $true + ChangePasswordAtLogon = $false + PasswordNeverExpires = $false + } + + # Remove lines with empty value + @($ADUserParameters.keys) | ForEach-Object { + if (-not $ADUserParameters[$_]) { $ADUserParameters.Remove($_) } + } + + #USER ANLEGEN + # New-ADUser @ADUserParameters + + + Write-Host "Benutzer $($user.DisplayName) erfolgreich hinzugefügt." + + } else { + Write-Host "Benutzer $($user.DisplayName) existiert bereits in der lokalen AD." + } + +} \ No newline at end of file