Il peut arriver que vous souhaitiez importer en masse des utilisateurs dans Active Directory. Vous avez déjà effectué une exportation des utilisateurs AD vers un fichier CSV. Mais maintenant, vous aimez utiliser ce fichier CSV pour réimporter les utilisateurs dans AD. L’approche la plus rapide et la plus efficace consiste à utiliser PowerShell. Dans cet article, vous apprendrez comment importer des utilisateurs AD depuis CSV avec PowerShell.
Le script PowerShell Import-ADUsers.ps1 parcourra le fichier CSV et créera des utilisateurs AD avec les informations ci-dessous par utilisateur :
- Nom et prénom
- Prénom
- Nom de famille
- Nom d'affichage
- Nom de connexion de l'utilisateur
- Nom de l'utilisateur principal
- Rue
- Ville
- État
- Code Postal
- Pays
- Titre d'emploi
- Département
- Entreprise
- Directeur
- OU
- Description
- Bureau
- Numéro de téléphone
- Mobile
- Remarques
- Statut du compte
Note:Le compte aura le mot de passe défini commeP@ssw0rd1234. Remplacez-le par un mot de passe différent dans le script PowerShell.
Comment importer des utilisateurs dans Active Directory à partir d'un fichier CSV
Passons en revue les étapes et importons en masse des utilisateurs Active Directory à partir d'un fichier CSV avec PowerShell.
Étape 1 : Créer un fichier CSV avec les utilisateurs
Sans fichier CSV, vous ne pouvez pas utiliser le script et importer les utilisateurs dans AD.
Lecture recommandée :Exporter les enregistrements DNS au format CSV avec PowerShell
- Si vous disposez déjà d'un Active Directory, vous pouvez exécuter le script dans l'article Exporter les utilisateurs AD vers CSV avec PowerShell. Après cela, utilisez ce fichier CSV.
- Supposons que vous n'ayez pas d'Active Directory pour exporter les utilisateurs AD vers un fichier CSV et que vous souhaitiez uniquement un exemple de fichier CSV afin de pouvoir le modifier et l'utiliser ; téléchargez le fichier CSV ImportADUsers.csv.

Téléchargez et placez le script PowerShell Import-ADUsers.ps1 sur le contrôleur de domaineC:scriptsdossier. Si vous n'avez pas de dossier de scripts, créez-en un.
Assurez-vous que le fichier est débloqué pour éviter les erreurs lors de l'exécution du script. Pour en savoir plus, consultez l'article Erreur non signée numériquement lors de l'exécution du script PowerShell.
Une autre option consiste à copier et coller le code ci-dessous dans le Bloc-notes. Donnez-lui le nomImporter-ADUsers.ps1et placez-le dans leC:scriptsdossier.
<#
.SYNOPSIS
Import-ADUsers.ps1
.DESCRIPTION
Import Active Directory users from CSV file.
.LINK
alitajran.com/import-ad-users-from-csv-powershell
.NOTES
Written by: ALI TAJRAN
Website: alitajran.com
LinkedIn: linkedin.com/in/alitajran
.CHANGELOG
V2.00, 02/11/2024 - Refactored script
#>
# Define the CSV file location and import the data
$Csvfile = "C:tempImportADUsers.csv"
$Users = Import-Csv $Csvfile
# The password for the new user
$Password = "P@ssw0rd1234"
# Import the Active Directory module
Import-Module ActiveDirectory
# Loop through each user
foreach ($User in $Users) {
try {
# Retrieve the Manager distinguished name
$managerDN = if ($User.'Manager') {
Get-ADUser -Filter "DisplayName -eq '$($User.'Manager')'" -Properties DisplayName |
Select-Object -ExpandProperty DistinguishedName
}
# Define the parameters using a hashtable
$NewUserParams = @{
Name = "$($User.'First name') $($User.'Last name')"
GivenName = $User.'First name'
Surname = $User.'Last name'
DisplayName = $User.'Display name'
SamAccountName = $User.'User logon name'
UserPrincipalName = $User.'User principal name'
StreetAddress = $User.'Street'
City = $User.'City'
State = $User.'State/province'
PostalCode = $User.'Zip/Postal Code'
Country = $User.'Country/region'
Title = $User.'Job Title'
Department = $User.'Department'
Company = $User.'Company'
Manager = $managerDN
Path = $User.'OU'
Description = $User.'Description'
Office = $User.'Office'
OfficePhone = $User.'Telephone number'
EmailAddress = $User.'E-mail'
MobilePhone = $User.'Mobile'
AccountPassword = (ConvertTo-SecureString "$Password" -AsPlainText -Force)
Enabled = if ($User.'Account status' -eq "Enabled") { $true } else { $false }
ChangePasswordAtLogon = $true # Set the "User must change password at next logon"
}
# Add the info attribute to OtherAttributes only if Notes field contains a value
if (![string]::IsNullOrEmpty($User.Notes)) {
$NewUserParams.OtherAttributes = @{info = $User.Notes }
}
# Check to see if the user already exists in AD
if (Get-ADUser -Filter "SamAccountName -eq '$($User.'User logon name')'") {
# Give a warning if user exists
Write-Host "A user with username $($User.'User logon name') already exists in Active Directory." -ForegroundColor Yellow
}
else {
# User does not exist then proceed to create the new user account
# Account will be created in the OU provided by the $User.OU variable read from the CSV file
New-ADUser @NewUserParams
Write-Host "The user $($User.'User logon name') is created successfully." -ForegroundColor Green
}
}
catch {
# Handle any errors that occur during account creation
Write-Host "Failed to create user $($User.'User logon name') - $($_.Exception.Message)" -ForegroundColor Red
}
}- Ligne 21 :Modifiez l'emplacement du fichier CSV.
- Ligne 25 :Changer le mot de passe.
Exécutez PowerShell en tant qu'administrateur et exécutez le script PowerShell pour importer les utilisateurs AD à partir du fichier CSV. Attendez que ce soit terminé.
C:scripts.Import-ADUsers.ps1Le script indiquera si :
- L'utilisateur est créé avec succès.
- L'utilisateur existe déjà.
- L'utilisateur ne peut pas être créé avec le message d'erreur.
A user with username Kylie.Davidson already exists in Active Directory.
A user with username Leonard.Clark already exists in Active Directory.
A user with username Madeleine.Fisher already exists in Active Directory.
A user with username Melanie.Scott already exists in Active Directory.
A user with username Nicholas.Murray already exists in Active Directory.
A user with username Piers.Bower already exists in Active Directory.
A user with username Ruth.Dickens already exists in Active Directory.
The user Sebastian.Nolan is created successfully.
The user Zoe.Roberts is created successfully.Vérifiez que les utilisateurs sont créés avec succès dans Active Directory.

Conclusion
Vous avez appris à importer des utilisateurs AD à partir d'un CSV avec PowerShell. Si vous utilisez le script PowerShell Exporter les utilisateurs AD et que vous souhaitez réimporter les utilisateurs dans Active Directory, exécutez le script PowerShell Importer les utilisateurs AD.
Avez-vous apprécié cet article ? Vous aimerez peut-être aussi Exporter les utilisateurs désactivés depuis Active Directory. N'oubliez pas de nous suivre et de partager cet article.






![Comment réparer l'écran noir de la mort de l'iPhone 16/16 Pro [iOS 18 pris en charge]](https://elsefix.com/statics/image/placeholder.png)








