Gestion de Bureaux & Active Directory
Contexte & Problématique
Dans le cadre de mon apprentissage au sein de la Direction des Systèmes d'Information, j'ai identifié l'absence d'un outil centralisé permettant de visualiser l'occupation physique des bureaux et d'interroger l'Active Directory (AD) de manière simple.
Les techniciens du support devaient jongler entre les outils d'administration Windows natifs (ADUC) et des tableaux Excel de suivi manuel. Cette fragmentation générait des pertes de temps importantes et des risques d'erreurs d'affectation. J'ai donc conçu et développé de façon autonome une application web interne permettant de résoudre ce problème en unifiant la cartographie des bureaux et les requêtes LDAP de l'annuaire d'entreprise.
Objectifs Principaux
L'outil a été conçu autour de 4 modules majeurs :
- Cartographie en temps réel : Représenter visuellement l'occupation des locaux à partir des attributs LDAP en temps réel.
- Recherche Utilisateur : Visualiser en un clic l'identité, les rôles, les groupes et les informations de compte Active Directory.
- Explorateur d'Objets : Explorer la structure logique des Unités d'Organisation (OU), les comptes de service et les groupes de sécurité.
- Tableau de Bord SI : Centraliser et lever des alertes opérationnelles (comptes expirant sous peu, bureaux en sur-effectif, comptes dormants).
Architecture Technique
L'application utilise une architecture découplée à deux couches :
- Frontend (Navigateur) : Développé en HTML/CSS et JavaScript Vanilla, sans dépendance ni framework externe. Il effectue des appels AJAX asynchrones (`fetch()`) pour interroger les données.
- Backend (Python/Flask) : Serveur d'API léger faisant l'intermédiaire sécurisé entre le client et le contrôleur de domaine Windows. Il gère la connexion authentifiée et les requêtes LDAP optimisées via la bibliothèque `LDAP3`.
Flux de communication
Fonctionnalités & Intégration LDAP
- Plan interactif : Le plan des locaux est découpé en zones cliquables. Lors du clic sur une pièce, une requête interroge dynamiquement l'attribut LDAP `physicalDeliveryOfficeName` pour afficher instantanément la liste des collaborateurs y travaillant avec leur photo et département.
- Fiche Utilisateur complète : Extraction des appartenances aux groupes imbriqués, date d'expiration des mots de passe, et statut du compte utilisateur (désactivé, verrouillé, expiré).
- Tableau de Bord opérationnel : Surveillance active du domaine en extrayant les comptes de service inactifs (basé sur le timestamp de `lastLogon` / `lastLogonTimestamp`) et les anomalies d'effectif physique dans les bureaux.
Compétences du Référentiel BTS SIO (SISR)
| Compétence | Mise en œuvre concrète |
|---|---|
| B1.1 – Assistance utilisateurs et services | Création d'un service d'aide aux équipes SI pour accélérer l'identification des localisations lors d'interventions physiques ou de déménagements. |
| B2.2 – Gestion des ressources et des domaines | Connexion sécurisée via LDAP3, exécution de filtres de requêtes LDAP complexes et manipulation de la structure de l'annuaire d'entreprise (OU, groupes). |
| B2.3 – Sécurisation des accès | Détection des vulnérabilités de comptes (mots de passe expirants) et identification des comptes de service dormants ou obsolètes. |
| B1.4 – Travail en mode projet | Développement intégral autonome, depuis l'analyse du besoin auprès des techniciens jusqu'au déploiement de l'API en production interne. |
Bilan & Perspectives
Ce projet m'a permis d'appréhender concrètement le fonctionnement et le protocole sous-jacent (LDAP) d'un annuaire d'entreprise au-delà des consoles d'administration classiques. L'outil est pleinement utilisé en interne par la DSI.
Perspectives d'évolution : Intégration d'un Single Sign-On (SSO) pour l'accès des techniciens, et l'ajout d'une fonctionnalité d'écriture permettant de modifier directement les attributs d'un utilisateur (changement de bureau, réinitialisation de mot de passe) via l'interface web.