La gestion du cycle de vie Active Directory — Sans jamais ouvrir une console Microsoft.
Import CSV → comptes créés. Restructuration → comptes migrés. Départ → compte archivé. En quelques clics, pas en PowerShell.
📖 Guide utilisateur · 📥 Télécharger la dernière version · 🗺️ Feuille de route Go · 📊 État avancement
| Profil | Cas d'usage typiques |
|---|---|
| Admin réseau établissement | Rentrée 1 500 élèves, mutations fin d'année, départs ponctuels, réinitialisation MDP classe complète |
| Admin PME / Collectivité | Onboarding/offboarding collaborateurs, gestion OU par service/équipe, délégation helpdesk, conformité RGPD |
| MSSP / Intégrateur | Multi-clients (multisite), déploiement standardisé, audit centralisé, modèles réutilisables |
Pas seulement éducation : la logique « prénom/nom/équipe » s'applique à toute structure hiérarchique (service, équipe, projet, site) — il suffit de renommer « classe » en « équipe » dans l'UI.
| Module | Description |
|---|---|
| Création de comptes / Arrivées | Import CSV, génération identifiants/MDP/mail auto, résolution doublons, vérification AD existants, export CSV étiquettes prêt à imprimer |
| Migration (restructuration) | Via CSV (prénom/nom/équipe) ou interface (sélection OU), déplacement AD + groupes auto, résolution par prénom/nom |
| Gestion des départs | Désactivation immédiate ou archivage + purge planifiée (délai configurable, 30j par défaut) |
| Réinitialisation MDP | Par OU, groupe AD ou CSV, politiques différées (élèves/personnels), forçage changement à la prochaine connexion |
| Explorateur AD | Arborescence OUs/groupes, panneau central unifié (utilisateurs + groupes + sous-OU), clic droit complet (modif, move, MDP, groupes, suppr), recherche temps réel |
| Export (CSV / Étiquettes PDF) | Sélection OU ± sous-OU, champs cochables (incl. MDP mémorisés), PDF Avery L7160/L7163, QR codes, couleurs pastel |
| Journal d'actions | Filtres date/type/résultat/domaine/opérateur, export CSV, stockage local SQLite (append-only) |
| Mode simulation | Toute écriture AD = prévisualisation modifiable avant validation |
- LDAPS par défaut (port 636), fallback LDAP explicite avec avertissement, certificat CA custom
- Coffre MDP AES-256 local (machines admin), jamais sur l'AD
- Mise à jour intégrée : vérification, téléchargement, installation, redémarrage auto, vérification somme de contrôle
- Configuration chiffrée (domaine, utilisateur) via
platformdirs+ AES
Étiquettes avancées : éditeur WYSIWYG, badges/cartes, trombinoscope photo A4/A3 et envoi d'une étiquette par mail, multisite : plusieurs domaines/forêts AD gérés depuis une seule instance (profils chiffrés, sélecteur de site, journal par domaine), délégation d'administration (RBAC) : 5 rôles, portées par OU/groupe, garde-fou sur chaque écriture AD, journal filtrable par opérateur, portail auto-service élève/parent : réinitialisation MDP par code mail, consultation identifiant/mail, demande création compte avec validation admin (serveur web stdlib, sans dépendance externe), API REST + Webhooks : intégration SIS (PRONOTE, etc.), notifications externes (Teams, Slack, mail, SIG), synchronisation bidirectionnelle, IA / Assistant : détection anomalies (doublons, comptes orphelins), suggestion nettoyage fin d'année, génération identifiants 'intelligents', analyse logs → recommandations sécurité, conformité RGPD (rapport, droit à l'oubli, chiffrement exports), MFA admin, session unique, granularité MDP (PSO), signature numérique exports, sauvegarde & restauration (backup ZIP, restore 1-clic, migration vN→vN+1).
- Active Directory accessible (Windows Server 2012 → 2025)
- Compte avec droits création/modification utilisateurs (Délégation OU ciblée recommandée)
- Pas de Python requis sur le poste admin (binaires Windows/Linux fournis)
# Windows 10/11
EduSyncAD-Setup.exe
# → Raccourcis Menu Démarrer/Bureau, désinstallation standard via Paramètres Windows
# Linux
flatpak install EduSyncAD-linux.flatpak| Champ | Exemple |
|---|---|
| Domaine | entreprise.local ou lycee-victor-hugo.fr |
| Contrôleur | dc01.entreprise.local ou 10.0.0.5 |
| Utilisateur | admin (ou ENTREPRISE\admin) |
| Mot de passe | Jamais stocké |
La connexion LDAPS chiffrée est tentée en priorité. Repli automatique sur LDAP (port 389) si indisponible. Si le contrôleur utilise un certificat émis par une autorité interne (cas courant), voir la section dépannage du guide.
prenom;nom;equipe
Thomas;Martin;Comptabilité
Léa;Petit;ITSeuls prenom et nom sont obligatoires. equipe (ex classe, service, projet, site) → OU auto-résolue.
Colonne ou (DN complet) acceptée pour cas avancés — voir guide utilisateur.
Des exemples sont disponibles dans le dossier exemples/.
git clone <url-du-depot>
cd EduSync-AD
python -m venv .venv && source .venv/bin/activate # Windows : .venv\Scripts\activate
pip install -e ".[dev]"
python src/edusync_ad/app.pyBuild Windows (.exe) :
pip install pyinstaller cairosvg pillow
python tools/generate_icon.py
pyinstaller packaging/edusync_ad.spec
# → dist/EduSyncAD/EduSyncAD.exeTests :
pytestLa prochaine génération d'EduSync AD est réécrite en Go (backend + UI desktop Wails v3, HTML + HTMX embarqués) : binaire unique léger, LDAP natif concurrent, démarrage instantané, cross-compile en une commande — sans perte de fonctionnalité.
📖 Feuille de route de migration ·
Architecture ·
État d'avancement ·
Résumé migration ·
CLAUDE.md / AGENTS.md (contexte IA)
# Prérequis : Go 1.27+, Task (go install github.com/go-task/task/v3/cmd/task@latest)
task --list # toutes les commandes
task dev # application desktop
task cli -- paths --json
task test # tests Go (65 tests)
task lint # gofmt + go vet
task build:all # cross-build → dist/ (5 cibles CLI)La version Python publiée reste la version de production jusqu'à la fin de la
migration : les deux stacks sont testées à chaque commit (ci.yml).
| Document | Description |
|---|---|
| État d'avancement | Vue rapide de l'avancement réel (modules, tests, build, prochaine action) |
| Architecture Go | Architecture cible, flux UI, paquets, formats partagés Python↔Go |
| Environnement test AD | Samba AD DC en container (LDAPS, Kerberos, DNS, GPO, PSO) |
| Guide utilisateur | Manuel complet v1.x (modules, connexion, dépannage) |
| Migration Go | |
| Résumé migration | 3 priorités, phases, critères acceptation, risques |
| Phase 0 + Core M1-M11 | Fondations + câblage bout en bout (Lot A en cours) |
| Modules avancés M12-M24 | Photos, profils, quotas, scripts, M365, Exchange, RDS, cache T2 (Lot B) |
| Modules v4.0 M25-M32 | Multisite, RBAC, portail, API, IA, conformité, sauvegarde (Lot C) |
| Alpha Windows/Linux | Packaging InnoSetup, AppImage, auto-update, checklist |
| Campagne tests post-alpha | Intégration Samba, e2e Playwright, benchmarks, couverture |
| Modules (fiches détaillées) | docs/modules/MXX-*.md — une fiche par module (objectif, Python ref, Go à faire, validation) |
| Python v1.x (référence parité) | |
| Fonctionnalités | Périmètre complet M1-M32 + fondations T0-T2 |
| État réel | Statut vérifié dans le code, dette tests identifiée |
| Tests manquants | Gaps à combler en Go (M26-M32, scénarios erreur, perf) |
MIT — Usage libre, modification, distribution, usage commercial autorisé.