1. Cahier des Charges & Contexte du Projet

1.1 Contexte et Objectifs

Dans le prolongement de ma certification Microsoft Certified: Azure Administrator Associate (AZ-104) et de mes travaux sur les infrastructures hybrides, j’ai conçu ce laboratoire pour maîtriser la pile Modern Workplace (Microsoft 365) sous deux angles complémentaires : l’ingénierie de déploiement (Build) et le diagnostic approfondi N2/Support Exécutif VIP (Run & Troubleshoot).

En environnement de production, les incidents affectant les utilisateurs critiques (COMEX/VIP) ou bloquant le déploiement de postes ne se résolvent pas uniquement via l’interface graphique des portails d’administration. Ils exigent une compréhension exacte des couches sous-jacentes : jetons d’authentification PRT (Primary Refresh Token), mécanique d’autodécouverte Autodiscover / MAPI over HTTP, fournisseurs de services de configuration CSP (Configuration Service Providers) et analyse des journaux de l’agent IME (Intune Management Extension).

Je me suis fixé trois objectifs méthodologiques :

  1. Zéro attribution manuelle unitaire : Structurer le provisionnement des licences, des politiques de sécurité et du déploiement applicatif exclusivement via des Groupes Dynamiques et du Group-Based Licensing.
  2. Administration hybride GUI & PowerShell : Basculer systématiquement sur les modules ExchangeOnlineManagement et Microsoft.Graph dès que l’interface graphique présente des limites techniques (ex: désactivation de l’AutoMapping sur les boîtes partagées volumineuses ou gestion granulaire des calendriers VIP).
  3. Validation par l’injection de pannes (Chaos Testing) : Simuler des incidents réels de niveau 2 et 3 (saturation de cache .ost, échec de détection d’applications Win32, blocage par Accès Conditionnel, compromission de session) pour documenter des procédures de résolution déterministes.

1.2 Architecture Globale & Chaîne de Dépendance

Le laboratoire repose sur un tenant Microsoft 365 Business Premium (intégrant Entra ID P1, Intune Plan 1, Exchange Online et Defender for Business) et des postes clients sous Windows 11 Pro (23H2/24H2) équipés d’une puce vTPM 2.0.

graph TD


2. Ingénierie de l’Identité, des Licences et du Cycle de Vie (Entra ID)

2.1 Attribution de Licences par Groupe (Group-Based Licensing)

Pour éviter toute dérive de configuration (configuration drift) lors de l’arrivée ou du départ d’un collaborateur, les licences ne sont jamais assignées directement aux comptes utilisateurs.

  1. Création du groupe de sécurité GRP_LIC_M365_BusinessPremium.
  2. Association de la licence Microsoft 365 Business Premium à ce groupe avec activation sélective des plans de services (Entra ID P1, Intune, Exchange Online Plan 1, Microsoft 365 Apps).
  3. Création d’un jeu de comptes représentatifs des cas d’usage d’entreprise :
    • marc.pdg@... : Profil Exécutif / VIP (fortes exigences de mobilité et de délégation).
    • sophie.assistante@... : Profil Assistante de direction (gestion multi-boîtes et calendriers délégués).
    • lucas.compta@... : Profil métier standard.

[Capture #1] : Vue du portail Entra ID / M365 Admin montrant le groupe GRP_LIC_M365_BusinessPremium avec l’attribution automatique des licences aux 3 utilisateurs.

2.2 Passe d’Accès Temporaire (TAP) & Authentification Sans Friction

Dans un contexte de support VIP, l’équipe IT doit régulièrement préparer ou dépanner le poste ou le smartphone d’un dirigeant sans connaître son mot de passe et sans l’interrompre pour valider une notification MFA.

J’ai activé la stratégie Temporary Access Pass (TAP) dans Entra ID :

  • Cas d’usage : Génération d’un code à usage unique valable 60 minutes sur le profil de marc.pdg. Ce code permet d’effectuer l’enrôlement initial du poste Windows 11 ou d’enregistrer une nouvelle méthode MFA (Microsoft Authenticator / FIDO2) en contournant temporairement l’exigence de double facteur habituelle de manière auditée.

[Capture #2] : Génération d’un Temporary Access Pass (TAP) sur le compte marc.pdg dans Entra ID.

2.3 Remplacement des “Security Defaults” par l’Accès Conditionnel

Les paramètres de sécurité par défaut (Security Defaults) d’Entra ID manquent de granularité pour la production. Après les avoir désactivés, j’ai implémenté deux stratégies d’Accès Conditionnel (avec exclusion stricte du compte d’administration d’urgence Break-Glass) :

  • CA01 - Require MFA for All Users : Force l’authentification multifacteur sur toutes les applications cloud.
  • CA02 - Require Compliant Device for Office 365 : Restreint l’accès aux données Exchange Online et SharePoint depuis un poste Windows uniquement si celui-ci est évalué comme Conforme (Compliant) par Microsoft Intune.

3. Architecture de Messagerie Exchange Online & Cas d’Usage VIP

L’administration d’Exchange Online a été réalisée de manière hybride via le centre d’administration (admin.exchange.microsoft.com) et le module PowerShell v3 (ExchangeOnlineManagement basé sur l’API REST).

3.1 Délégation Exécutive (Binôme PDG / Assistante) & Problématique de l’AutoMapping

Lorsqu’un administrateur N1 accorde le droit Accès total (Full Access) sur une boîte aux lettres via l’interface web d’Exchange, l’attribut AutoMapping est activé par défaut dans Active Directory / Entra ID (msExchDelegateListLink).

  • Impact technique : Le client Outlook Classic de l’assistante monte automatiquement la boîte du PDG et télécharge l’intégralité de son contenu dans le fichier .ost local de l’assistante. Si la boîte du VIP approche les 45 Go, le fichier .ost atteint sa limite structurelle de 50 Go, provoquant des gels constants d’Outlook (Not Responding).

Implémentation propre en PowerShell :

# Connexion au tenant via le module REST ExchangeOnlineManagement v3
Connect-ExchangeOnline

# 1. Attribution du droit FullAccess SANS AutoMapping pour préserver le fichier .OST de l'assistante
Add-MailboxPermission -Identity "[email protected]" `
                      -User "[email protected]" `
                      -AccessRights FullAccess `
                      -AutoMapping $false

# 2. Attribution du droit "Envoyer de la part de" (Send on Behalf) sur la boîte du PDG
Set-Mailbox -Identity "[email protected]" `
            -GrantSendOnBehalfTo "[email protected]"

# 3. Délégation avancée du Calendrier avec visibilité sur les rendez-vous marqués "Privés"
Add-MailboxFolderPermission -Identity "[email protected]:\Calendar" `
                            -User "[email protected]" `
                            -AccessRights Editor `
                            -SharingPermissionFlags Delegate,CanViewPrivateItems

[Capture #3] : Terminal PowerShell montrant l’exécution des commandes Add-MailboxPermission (-AutoMapping $false) et Get-MailboxFolderPermission confirmant les flags Delegate, CanViewPrivateItems.

3.2 Boîtes Partagées et Salles de Réunion (Ressources)

  • Boîte partagée (compta@...) : Création d’une boîte sans licence avec délégation FullAccess et SendAs (Envoyer en tant que — transparent pour le destinataire externe) attribuée à lucas.compta et sophie.assistante.
  • Boîte de ressource (salle.conseil@...) : Configuration du moteur de réservation automatique (Calendar Attendant) pour accepter automatiquement les demandes de réunion sans conflit et refuser les chevauchements :
Set-CalendarProcessing -Identity "[email protected]" `
                       -AutomateProcessing AutoAccept `
                       -AllowConflicts $false `
                       -BookingWindowInDays 180

4. Gestion de Parc Moderne (MDM) avec Microsoft Intune

4.1 Enrôlement Automatique & Jonction Cloud-Native (Entra Joined)

Le pont d’inscription automatique MDM a été activé dans Entra ID (MDM User Scope = All). Pour cibler dynamiquement l’ensemble des postes de travail Windows 11 sans intervention manuelle, j’ai configuré le groupe dynamique GRP_DEV_All_Windows11_Clients avec la règle d’appartenance suivante :

(device.deviceOSType -eq "Windows") and (device.deviceOSVersion -startsWith "10.0.2")

Après jonction du poste client CL01 à Microsoft Entra ID, la validation de l’état de l’identité machine et de la présence du jeton SSO (PRT) est effectuée en ligne de commande via dsregcmd /status :

  • AzureAdJoined : YES
  • WamDefaultSet : YES
  • AzureAdPrt : YES (Garantit l’authentification silencieuse SSO sur Outlook, Teams et OneDrive).

[Capture #4] : Sortie de la commande dsregcmd /status sur la VM Windows 11 montrant AzureAdJoined : YES et AzureAdPrt : YES, à côté de la vue Intune montrant le poste “Compliant”.

4.2 Durcissement du Poste : Conformité, BitLocker Silencieux et Windows LAPS

Plutôt que d’utiliser d’anciennes GPO locales, la configuration de sécurité est poussée via le protocole OMA-DM et les CSP Windows :

Composant Intune Nom de la Politique Paramètres Clés Implémentés
Compliance Policy COMP_WIN_Standard_Security Exige Pare-feu actif, Antivirus Defender à jour et chiffrement BitLocker. Intégré à l’Accès Conditionnel.
Endpoint Security SEC_WIN_Silent_BitLocker Chiffrement silencieux du lecteur OS (XTS-AES 128-bit) via TPM 2.0 sans prompt utilisateur + séquestre automatique de la clé de récupération dans Entra ID.
Account Protection SEC_WIN_Cloud_LAPS Activation de Windows LAPS : rotation automatique tous les 30 jours du mot de passe administrateur local (14 caractères complexes) avec sauvegarde chiffrée dans Entra ID et contrôle d’accès RBAC.

[Capture #5] : Vue du portail Intune / Entra ID montrant la récupération d’un mot de passe Administrateur Local via Windows LAPS et la clé de récupération BitLocker associée au poste CL01.

4.3 Ingénierie Applicative : Packaging Win32 (.intunewin) et Agent IME

Pour déployer des applications métiers qui ne sont pas au format Microsoft Store, Intune s’appuie sur le service local Microsoft Intune Management Extension (IME).

J’ai industrialisé le déploiement de 7-Zip (x64) au format Win32 :

  1. Empaquetage et chiffrement des sources d’installation avec l’outil IntuneWinAppUtil.exe :
.\IntuneWinAppUtil.exe -c "C:\IntunePkg\Source" -s "7z2408-x64.msi" -o "C:\IntunePkg\Output" -q
  1. Configuration dans Intune :
    • Commande d’installation : msiexec /i "7z2408-x64.msi" /qn (Exécution dans le contexte SYSTEM).
    • Règle de détection (Detection Rule) : Vérification de la présence du binaire C:\Program Files\7-Zip\7zFM.exe et du code produit MSI.
    • Attribution en mode Required sur le parc Windows 11 et publication du Portail d’entreprise (Company Portal) pour les applications en libre-service (Available).

5. Écosystème Collaboratif (OneDrive KFM, SharePoint & Mobilité MAM)

5.1 Sauvegarde Transparente des Postes : OneDrive Known Folder Move (KFM)

Afin de garantir zéro perte de données en cas de panne matérielle ou de vol du PC d’un collaborateur, j’ai déployé un profil Settings Catalog (CFG_WIN_OneDrive_Silent_KFM) qui configure silencieusement le client OneDrive.exe :

  • Connexion silencieuse (SilentAccountConfig) : Authentification automatique de OneDrive via le jeton Windows PRT.
  • Redirection transparente (KFMOptInWithWizard / KFMSilentOptIn) : Redirection automatique des dossiers Bureau, Documents et Images vers le cloud avec activation de Files On-Demand (libération de l’espace disque local via les pointeurs NTFS Reparse Points).

[Capture #6] : Explorateur Windows sur la VM CL01 montrant les dossiers Bureau/Documents avec l’icône de statut Cloud (Files On-Demand) et la bibliothèque SharePoint synchronisée.

5.2 Protection des Données VIP sur Mobile Personnel (MAM sans Enrôlement)

Les dirigeants refusent fréquemment d’enrôler leur smartphone personnel (iOS/Android) dans le MDM de l’entreprise par crainte pour leur vie privée. Pour sécuriser les données sans enrôler l’appareil, j’ai mis en place une App Protection Policy (MAM) ciblant Outlook et Teams :

  • Chiffrement du conteneur applicatif.
  • Interdiction du Copier/Coller depuis Outlook/Teams vers des applications personnelles (WhatsApp, Notes) et blocage de la sauvegarde dans iCloud / Google Drive.
  • Exigence d’un code PIN applicatif (ou biométrie) à l’ouverture d’Outlook.

6. Scénarios de Troubleshooting & Remédiation N2/VIP (Chaos Testing)

Pour valider ma capacité d’investigation technique, j’ai provoqué et résolu 5 incidents critiques représentatifs du support N2/N3 et de l’assistance VIP.


Scénario #1 : Échec d’installation d’une application Win32 dans le Portail d’Entreprise

  • Symptôme signalé : L’application métier déployée via Intune reste bloquée sur “Échec de l’installation (0x87D1041C)” sur le poste client. L’interface web d’Intune ne remonte l’erreur qu’avec 45 minutes de latence.
  • Méthodologie d’investigation locale :
    1. Ouverture des journaux de l’agent IME sur le poste client dans C:\ProgramData\Microsoft\IntuneManagementExtension\Logs\IntuneManagementExtension.log (et AppWorkload.log).
    2. Analyse de la séquence d’exécution :
      • [Win32App] Executing install command: msiexec /i "7z2408-x64.msi" /qn → ExitCode: 0 (l’installation a en réalité parfaitement réussi).
      • [Win32App] Detection rule evaluated to FALSE. Path C:\Program Files\7-Zip\7z_typo.exe not found.
  • Diagnostic (Root Cause) : Le binaire s’est bien installé avec un code de retour 0, mais une coquille dans le chemin de la Detection Rule (7z_typo.exe au lieu de 7zFM.exe) fait croire à l’agent IME que l’installation a échoué.
  • Résolution & Contournement du backoff timer de 24h :
    1. Correction du chemin du fichier dans la règle de détection sur le portail Intune.
    2. Sur le poste client, l’agent IME place par défaut une application en échec en liste d’attente (GRL - Global Retry List) pendant 24 heures. Pour forcer le retraitement immédiat sans attendre :
      • Suppression de la sous-clé de registre de l’application dans HKLM\SOFTWARE\Microsoft\IntuneManagementExtension\Win32Apps\{User-SID}\{App-GUID}.
      • Redémarrage du service Windows Microsoft Intune Management Extension (Restart-Service IntuneManagementExtension). L’application passe au statut Installé en moins de 60 secondes.

[Capture #7] : Lecture du fichier IntuneManagementExtension.log (surlignant le code retour et l’évaluation de la Detection Rule) et vue de la clé de registre HKLM\...\Win32Apps.


Scénario #2 : Dysfonctionnement de la délégation d’agenda VIP et règle MAPI fantôme

  • Symptôme signalé : L’assistante de direction (sophie.assistante) est pourtant déclarée déléguée du calendrier de marc.pdg, mais elle ne reçoit plus aucune invitation de réunion adressée au PDG. De son côté, le PDG se plaint que certaines invitations disparaissent instantanément de sa boîte de réception.
  • Méthodologie d’investigation :
    1. Vérification des permissions sur le dossier Calendrier en PowerShell (Get-MailboxFolderPermission). Les droits sont corrects.
    2. Lorsqu’Outlook configure un délégué de calendrier, il crée en arrière-plan une règle MAPI cachée (Schedule+ EMS Interface) chargée de transférer les convocations de réunion au délégué. Si un ancien délégué a été supprimé brutalement dans Entra ID, cette règle cachée se corrompt.
    3. Inspection des règles de boîte de réception, y compris les règles cachées invisibles dans Outlook et OWA :
Get-InboxRule -Mailbox "[email protected]" -IncludeHidden | Format-List Name, Identity, Enabled, Description
  • Diagnostic & Résolution :
    • Identification d’une règle cachée corrompue pointant vers un SID orphelin.
    • Suppression de la règle cachée via Remove-InboxRule -Mailbox "marc.pdg@..." -Identity "<RuleID>" et réinitialisation propre du flag de délégation (Set-MailboxFolderPermission ... -SharingPermissionFlags Delegate,CanViewPrivateItems).
    • Validation de la connectivité client via l’outil intégré d’Outlook Classic (Ctrl + Clic droit sur l’icône de la zone de notification → Tester la configuration automatique de la messagerie et État de la connexion pour contrôler la latence des flux MAPI/HTTP).

[Capture #8] : Fenêtre “État de la connexion Outlook” (montrant les flux HTTPS / MAPI) ou sortie PowerShell de Get-InboxRule -IncludeHidden.


Scénario #3 : Perte critique d’un email externe (Analyse EOP, Règle de Transport et Message Trace)

  • Symptôme signalé : Un partenaire externe affirme avoir envoyé un avenant contractuel urgent à marc.pdg@... il y a 15 minutes. Le message n’est ni dans la boîte de réception, ni dans les courriers indésirables (Junk Email) d’Outlook.
  • Méthodologie d’investigation :
    1. Exécution d’un Suivi de message (Message Trace) dans le centre d’administration Exchange Online (Get-MessageTrace -RecipientAddress "marc.pdg@...").
    2. Le statut du message remonte en Quarantined (ou FilteredAsSpam).
    3. Inspection des détails de l’événement : le message a intercepté une règle de flux de messagerie (Mail Flow Rule / ETR) configurée pour bloquer les pièces jointes contenant des macros ou a été retenu en Quarantaine Haute Confiance par Exchange Online Protection (EOP) en raison d’un échec d’alignement SPF/DMARC du domaine expéditeur.
  • Résolution :
    • Analyse des en-têtes SMTP (Authentication-Results: spf=softfail; dmarc=fail) dans le portail Microsoft Defender (security.microsoft.com → Email & collaboration → Review → Quarantine).
    • Après validation de la légitimité du fichier, libération du message (Release message) vers la boîte du PDG et ajout d’une entrée temporaire dans la Tenant Allow/Block List le temps que le partenaire corrige son enregistrement DNS SPF.

[Capture #9] : Résultat détaillé d’un “Message Trace” dans Exchange Admin Center montrant le parcours d’un email intercepté par une règle de flux ou mis en quarantaine.


Scénario #4 : VIP bloqué à l’étranger par l’Accès Conditionnel (Poste Non-Conforme)

  • Symptôme signalé : En déplacement, marc.pdg ne peut plus accéder à Outlook ni à Teams. Un écran Microsoft indique : “Vous ne pouvez pas accéder à cette ressource pour le moment. Votre appareil n’est pas conforme.”
  • Méthodologie d’investigation :
    1. Consultation des Journaux de connexion (Sign-in logs) dans Entra ID en filtrant sur l’utilisateur marc.pdg.
    2. Ouverture de l’événement en échec → Onglet Accès conditionnel (Conditional Access) : la règle CA02 - Require Compliant Device est marquée en Échec (Failure).
    3. Bascule dans le portail Intune → Fiche de l’appareil CL01 → Conformité de l’appareil (Device compliance) : la stratégie COMP_WIN_Standard_Security est en erreur sur le critère Pare-feu Windows.
  • Diagnostic & Résolution :
    • Une intervention précédente avait désactivé le pare-feu sur le profil réseau Public.
    • Exécution d’un script de Remédiation Proactive (Intune Remediations) à distance (Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True), suivie d’une synchronisation forcée de l’appareil depuis le portail Intune (Sync) et côté client via les paramètres Windows (Accès professionnel ou scolaire → Infos → Synchroniser).
    • L’état repasse en Compliant, le jeton PRT est rafraîchi et l’accès Outlook est rétabli sans redémarrage.

[Capture #10] : Vue des journaux de connexion Entra ID (onglet Conditional Access) montrant l’évaluation de conformité de l’appareil.


Scénario #5 : Procédure d’Offboarding d’Urgence (Compromission ou Départ Sensible)

  • Contexte : Départ conflictuel immédiat d’un collaborateur ayant accès à des données financières (lucas.compta). L’objectif est de couper tout accès en moins de 2 minutes tout en conservant légalement ses emails et ses fichiers OneDrive pour son responsable, sans payer de licence mensuelle résiduelle.
  • Runbook d’exécution PowerShell & Portail :
    1. Blocage de la connexion et révocation immédiate des jetons actifs (Refresh Tokens) : (Note : Bloquer simplement le compte dans l’interface peut laisser les jetons d’accès OAuth actifs jusqu’à 1 heure si l’on ne force pas la révocation de session).
Connect-MgGraph -Scopes "User.ReadWrite.All", "Directory.AccessAsUser.All"

# 1. Bloquer le compte dans Entra ID
Update-MgUser -UserId "[email protected]" -AccountEnabled:$false

# 2. Révoquer instantanément tous les Refresh Tokens et sessions MFA (Web, Outlook, Mobile)
Revoke-MgUserSignInSession -UserId "[email protected]"
  1. Effacement sélectif des données d’entreprise (Selective Wipe) : Lancement d’une action Retire / Wipe App Data dans Intune pour purger le cache Outlook/OneDrive sur ses appareils mobiles.
  2. Conversion de la boîte en Boîte Partagée & Délégation :
# Conversion en Shared Mailbox (conserve les 50 Go d'emails sans nécessiter de licence)
Set-Mailbox -Identity "[email protected]" -Type Shared

# Délégation de la boîte archivée au manager
Add-MailboxPermission -Identity "[email protected]" `
                      -User "[email protected]" `
                      -AccessRights FullAccess -AutoMapping $false
  1. Récupération de la licence : Retrait de l’utilisateur du groupe GRP_LIC_M365_BusinessPremium (la licence est immédiatement libérée pour un futur collaborateur sans perte des emails grâce à la conversion préalable en boîte partagée).

7. Synthèse & Bilan Technique

Ce laboratoire m’a permis d’illuster mes compétences d’administration système Windows/Active Directory et d’architecture Cloud Azure (AZ-104) autour des standards Modern Workplace.

En maîtrisant l’ensemble de la chaîne — depuis l’émission du jeton PRT dans Entra ID jusqu’à l’inspection des logs IntuneManagementExtension.log sur le poste client et l’administration granulaire d’Exchange Online en PowerShell — je dispose d’une méthodologie de diagnostic structurée, directement opérationnelle pour des environnements d’administration systèmes N2/N3 et de support exécutif VIP.