# 📘 Documentation Technique - Automatisation Active Directory **Projet :** Gestion des collaborateurs (Module 122 - Projet 01) **Date :** 22 Janvier 2026 **Auteur :** 7ka1 **Version :** 1.0 --- ## 📋 PrĂ©sentation Ce document dĂ©taille la procĂ©dure d'utilisation des scripts PowerShell dĂ©veloppĂ©s pour l'automatisation de la gestion des utilisateurs du domaine `epsicschool.local`. Ces scripts permettent de crĂ©er l'architecture, d'importer les utilisateurs, de gĂ©rer les dĂ©parts et d'assurer les sauvegardes. ## ⚙ PrĂ©requis Avant d'exĂ©cuter les scripts, assurez-vous de respecter les points suivants : 1. **PrivilĂšges :** Tous les scripts doivent ĂȘtre exĂ©cutĂ©s dans une console PowerShell en tant qu'**Administrateur**. 2. **Source de donnĂ©es :** Le fichier `happy_koalas_employees.csv` doit ĂȘtre prĂ©sent dans le mĂȘme dossier que les scripts. 3. **Politique d'exĂ©cution :** Si les scripts sont bloquĂ©s, exĂ©cutez la commande suivante : ```powershell Set-ExecutionPolicy Unrestricted -Scope Process ``` --- ## đŸ› ïž Description des Scripts ### 1. Structure Organisationnelle (`insert_OUs.ps1`) **But :** CrĂ©er l'arborescence des dĂ©partements dans l'Active Directory. * **Fonctionnement :** Lit la colonne "Department" du fichier CSV et crĂ©e une UnitĂ© d'Organisation (OU) pour chaque dĂ©partement unique Ă  la racine du domaine. * **Gestion d'erreur :** Si l'OU existe dĂ©jĂ , le script l'ignore et continue. ### 2. SĂ©curitĂ© des Comptes (`generate_passwords.ps1`) **But :** GĂ©nĂ©rer des mots de passe forts avant la crĂ©ation des comptes. * **Fonctionnement :** Ajoute une colonne "Password" dans le fichier CSV source. * **ComplexitĂ© :** 8 caractĂšres minimum, incluant Majuscules, Minuscules, Chiffres et CaractĂšres spĂ©ciaux. ### 3. Importation des Utilisateurs (`insert_users.ps1`) **But :** CrĂ©er massivement les comptes utilisateurs. * **Logique de nommage :** PremiĂšre lettre du prĂ©nom + point + Nom (ex: `p.nom`). * **ParamĂštres appliquĂ©s :** * L'utilisateur est placĂ© dans l'OU de son dĂ©partement. * L'utilisateur doit changer son mot de passe Ă  la premiĂšre connexion. * Le compte est activĂ© immĂ©diatement. ### 4. Gestion des Licenciements (`update_expiration_date.ps1`) **But :** Appliquer la politique de dĂ©part pour le dĂ©partement Production. * **Cible :** Utilisateurs du dĂ©partement "Production" avec le titre "Assembler". * **Action :** DĂ©finit la date d'expiration du compte Ă  J-1 (Hier), rendant le compte inopĂ©rant immĂ©diatement. ### 5. Archivage (`move_expired_users.ps1`) **But :** Maintenir l'Active Directory propre en archivant les anciens comptes. * **Fonctionnement :** 1. VĂ©rifie si l'OU `Retired` existe (la crĂ©e sinon). 2. Recherche tous les utilisateurs dont la date d'expiration est dĂ©passĂ©e. 3. DĂ©place ces utilisateurs vers l'OU `Retired`. ### 6. Sauvegarde (`backup_users.ps1`) **But :** Assurer la pĂ©rennitĂ© des donnĂ©es (Backup & Recovery). * **Action ImmĂ©diate :** Exporte les utilisateurs prĂ©sents dans les OU vers un fichier CSV, puis le compresse en ZIP dans le dossier `C:\backups\`. * **Automatisation :** CrĂ©e une tĂąche planifiĂ©e Windows nommĂ©e "BackupUsersDaily" qui exĂ©cutera ce script automatiquement **chaque jour Ă  23h00**. --- ## 🚀 Guide de DĂ©marrage Rapide (Workflow) Pour une mise en place complĂšte (ex: nouveau serveur), exĂ©cutez les scripts dans cet ordre prĂ©cis : 1. `.\insert_OUs.ps1` (Structure) 2. `.\generate_passwords.ps1` (DonnĂ©es) 3. `.\insert_users.ps1` (Comptes) 4. `.\update_expiration_date.ps1` (Mise Ă  jour statut) 5. `.\move_expired_users.ps1` (Nettoyage) 6. `.\backup_users.ps1` (SĂ©curisation) --- ## ❓ DĂ©pannage | Erreur rencontrĂ©e | Solution | | :--- | :--- | | **AccĂšs refusĂ© / UnauthorizedAccess** | VĂ©rifiez que vous avez bien fait "Clic-droit > ExĂ©cuter en tant qu'administrateur" sur PowerShell. | | **Fichier introuvable** | VĂ©rifiez que le fichier CSV est bien dans le mĂȘme dossier que le script. | | **Execution Policy...** | Tapez `Set-ExecutionPolicy Bypass` avant de lancer le script. |