📂 Script : Importation Massive d'Utilisateurs AD

📝 Description

Ce script PowerShell (insert_users.ps1) permet d'automatiser la création de comptes utilisateurs dans Active Directory à partir d'un fichier source CSV.

Fonctionnalités principales :

  • Création automatique des utilisateurs : Importe les identités depuis le fichier CSV.
  • Gestion dynamique des OUs : Si l'OU (Département) indiquée dans le CSV n'existe pas, le script la crée automatiquement.
  • Gestion des mots de passe : Convertit les mots de passe en chaîne sécurisée (SecureString).
  • Sécurité : L'option "L'utilisateur doit changer le mot de passe à la prochaine ouverture de session" est activée par défaut (ChangePasswordAtLogon).

⚙️ Prérequis

Avant de lancer le script, assurez-vous de disposer des éléments suivants :

  1. Environnement : Windows Server (Contrôleur de domaine) ou une machine Windows avec les outils RSAT (Remote Server Administration Tools) installés.
  2. Permissions : Le script doit être exécuté avec un compte Administrateur du Domaine (Domain Admin).
  3. Module PowerShell : Le module ActiveDirectory doit être présent sur la machine.

📊 Format du fichier CSV

Le script attend un fichier nommé par défaut : happy_koalas_employees_with_passwords.csv (modifiable dans la variable $CsvFilePath du script).

  • Délimiteur : Point-virgule (;)
  • Encodage recommandé : UTF-8
  • Entêtes obligatoires :
En-tête Description Exemple
FirstName Prénom Jean
LastName Nom de famille Dupont
UserName Identifiant de connexion (SAMAccountName) jdupont
Password Mot de passe initial (Doit respecter la complexité AD) P@ssw0rd123!
Email Adresse email jean.dupont@entreprise.com
Department Nom du département (deviendra l'OU) IT
JobTitle Titre du poste Technicien

Exemple de contenu CSV : FirstName;LastName;UserName;Password;Email;Department;JobTitle Jean;Dupont;jdupont;SuperPass123!;jean.dupont@domaine.com;Comptabilite;Comptable Marie;Curie;mcurie;Science2024!;marie.curie@domaine.com;R&D;Chercheuse


🔧 Configuration du script

Avant la première exécution, vous devez éditer le fichier insert_users.ps1 pour l'adapter à votre infrastructure spécifique.

1. Modifier le Domaine (Variable $DomainDN)

Remplacez la valeur par le Distinguished Name (DN) de votre racine.

  • Ligne approx. 14

Exemple pour le domaine "monentreprise.local" :

$DomainDN = "DC=monentreprise,DC=local"

2. Modifier le suffixe UPN (Variable $UserParams)

Par défaut, le script attribue @happykoalas.com. Modifiez cette ligne pour correspondre à votre domaine de messagerie/connexion.

  • Ligne approx. 68

UserPrincipalName = "$SamAccount@monentreprise.com"

3. Chemin du CSV (Optionnel)

Si vous changez le nom du fichier CSV, mettez à jour la variable $CsvFilePath.


🚀 Utilisation

  1. Ouvrez PowerShell en tant qu'administrateur.

  2. Si ce n'est pas déjà fait, autorisez l'exécution des scripts sur votre machine : Set-ExecutionPolicy RemoteSigned

  3. Naviguez vers le dossier contenant le script et le CSV : cd "C:\Chemin\Vers\Le\Dossier"

  4. Exécutez le script : .\insert_users.ps1


⚠️ Dépannage courant (Troubleshooting)

  • Erreur "Le terme 'Import-Module' n'est pas reconnu..."

    • Cause : Le module Active Directory n'est pas installé.
    • Solution : Installez les outils RSAT pour AD DS.
  • Erreur "Impossible de trouver le fichier..."

    • Cause : Le nom du fichier CSV dans le script ne correspond pas au nom réel du fichier, ou le fichier n'est pas dans le même dossier.
  • Erreur de création d'utilisateur (Mot de passe)

    • Cause : Le mot de passe dans le CSV ne respecte pas la politique de sécurité du domaine (longueur, complexité).
    • Solution : Mettez des mots de passe plus complexes dans le CSV ou désactivez temporairement la complexité des mots de passe dans les GPO (déconseillé).
  • Erreur "L'OU n'existe pas" (malgré la tentative de création)

    • Cause : Problème de droits ou $BaseDN incorrect.

Auteur : 7ka1 Version : 1.0

Description
à continué et à mettre dans l'AD pour les scripts
Readme 30 KiB
Languages
PowerShell 100%