Untitled
unknown
plain_text
a year ago
1.9 kB
6
Indexable
# Définition des variables
$csvFile = "C:\Users\Administrator\Script\Utilisateur.csv"
$domain = "HORIZON.LOCAL"
$defaultPassword = ConvertTo-SecureString "P@55w0rd" -AsPlainText -Force
# Importation du fichier CSV
$users = Import-Csv -Path $csvFile -Delimiter ";"
# Boucle sur chaque utilisateur du fichier CSV
foreach ($user in $users) {
$prenom = $user.PRENOM
$nom = $user.NOM
$departement = $user.DEPARTEMENT
$ouPath = "OU=$departement,DC=HORIZON,DC=LOCAL"
$samAccountName = "$prenom.$nom".ToLower()
$displayName = "$prenom $nom"
$email = "$samAccountName@$domain"
# Vérifier si l'OU existe, sinon la créer
if (-not (Get-ADOrganizationalUnit -Filter "Name -eq '$departement'")) {
New-ADOrganizationalUnit -Name $departement -Path "DC=HORIZON,DC=LOCAL" -ProtectedFromAccidentalDeletion $false
Write-Host "OU '$departement' créée."
Start-Sleep 2 # Pause pour éviter les problèmes de reconnaissance d'OU
}
# Vérifier si l'utilisateur existe déjà
if (-not (Get-ADUser -Filter "SamAccountName -eq '$samAccountName'")) {
# Création de l'utilisateur
New-ADUser -SamAccountName $samAccountName `
-UserPrincipalName $email `
-Name $displayName `
-GivenName $prenom `
-Surname $nom `
-DisplayName $displayName `
-Department $departement `
-Path $ouPath `
-AccountPassword $defaultPassword `
-Enabled $true `
-ChangePasswordAtLogon $true
Write-Host "✅ Utilisateur $displayName créé dans l'OU $departement."
} else {
Write-Host "⚠️ L'utilisateur $displayName existe déjà, aucune action effectuée."
}
}
Editor is loading...
Leave a Comment