Faire un instantané de la configuration de votre tenant Microsoft 365

Faire un instantané de la configuration de votre tenant Microsoft 365

En tant que vaste plateforme, Microsoft 365 peut s’avérer difficile à mettre en œuvre pour une gestion des modifications techniques. Le nombre d’options de configuration disponibles est stupéfiant, sans parler des paramètres qui ont un impact sur plusieurs applications. Citons la configuration de SharePoint qui a un impact sur la fonctionnalité de Teams. Le fait qu’il n’existe pas de véritable service de sauvegarde au niveau de la configuration pour Microsoft 365 n’arrange rien.

Par conséquent, il peut être difficile de tester les modifications de n’importe quel élément de configuration dans Microsoft 365. Des alertes comme l’analyseur de configuration de Microsoft Defender pour Office 365, peuvent aider à détecter les changements de configuration. Cependant cela ne s’étend pas au reste de la plateforme.

Configuration de l’état souhaité de Microsoft 365

Pour combler le manque d’un « instantané » efficace de la configuration de Microsoft 365, il existe cependant une solution. Ainsi, de nombreuses organisations se sont tournées vers la configuration en tant que code. Le principe de base est le suivant : la configuration de l’état souhaité (DSC) de la configuration est un script. Cela garantie que nous pouvons restaurer la configuration à un état de base convenu en réexécutant le script dans l’environnement. Le DSC n’est pas un concept nouveau et est utile dans de nombreuses autres technologies au fil des ans. Cependant, Microsoft 365 DSC s’appuie sur le DSC pour aider à résoudre le défi de la configuration du tenant.

Microsoft 365 DSC est un projet open source, mené par Microsoft et dirigé par la communauté. Il permet de comparer la configuration au sein d’un tenant Microsoft 365 ou même entre plusieurs tenants. Dans cet article, je vais détailler comment il peut être utilisé pour « photographier » la configuration de votre tenant. Ensuite nous comparerons cette photographie à une configuration mise à jour pour détecter les changements dans l’environnement.

Préparer une application Azure AD

Pour sécuriser l’authentification aux ressources, vous devrez enregistrer une nouvelle application Azure AD. Bien que le module permette de transmettre directement les informations d’identification de l’utilisateur, cela peut s’avérer délicat. C’est pourquoi tous les composants du module DSC sont à jour pour exploiter le module Microsoft Graph PowerShell SDK.

Créez un nouvel enregistrement d’application Azure AD et prenez note de l’ID tenant, de l’IP client et du secret client. En production, je recommande d’utiliser l’authentification par certificat mais le secret du client fonctionne bien pour les tests.

Ensuite, pour accorder des permissions à l’application, vérifiez la documentation pour les ressources associées que vous souhaitez inclure. Par exemple, je vais ajouter les permissions de l’application pour l’accès conditionnel – « AADConditionalAccessPolicy ». N’oubliez pas d’accorder le consentement sur les permissions une fois qu’elles sont ajoutées. Pour l’exportation, vous n’avez besoin que des autorisations énumérées sous « Export ». Si vous voulez automatiser la remédiation, vous aurez besoin des autorisations énumérées sous « Automatiser ».

Pour les ensembles de ressources plus importants, le module DSC contient la cmdlet Get-M365DSCCompiledPermissionList. Nous pouvons transmettre une liste de ressources à la cmdlet qui renvoie les autorisations requises :

1Get-M365DSCCompiledPermissionList -ResourceNameList @(‘AADConditionalAccessPolicy’)  

Installer le module Microsoft 365DSC

Microsoft 365 DSC se présente sous la forme d’un simple module PowerShell. Pour commencer, ouvrez une session PowerShell et exécutez la commande :

1Install-Module -Name Microsoft365DSC

Cela peut prendre du temps. En effet il faudra télécharger un grand nombre de dépendances pour permettre au module DSC d’opérer.

Extraire une configuration

Pour extraire une configuration, exécutez la cmdlet Export-M365DSCConfiguration. Précisez les ressources que vous souhaitez extraire, ainsi que les détails de l’application, comme ci-dessous.

Export-M365DSCConfiguration -Components @(<Component List>) -ApplicationId <AppID> -TenantId <TenantName>  -ApplicationSecret <AppSecret> -Path <Path for Export> -ConfigurationName  <Configuration Name> -FileName <Name of export file .ps1>

Faire un instantané

Cette opération exportera la configuration vers le chemin spécifié sous la forme d’un fichier .PS1 de configuration DSC. Dans le fichier, vous verrez les détails de la configuration exportée pour les ressources spécifiées. Dans ce cas, il s’agit des politiques d’accès conditionnel, mais il y a beaucoup plus d’options disponibles. Vous pouvez même utiliser l’outil d’exportation basé sur le Web. Cela permet de générer votre commande d’exportation, en sélectionnant les ressources et les applications que vous souhaitez inclure.

Créer un rapport de configuration

Le fichier de configuration PS1 exporté par DSC n’est pas un moyen très convivial d’examiner la configuration du tenant. La configuration peut être exportée au format Excel ou HTML en utilisant la cmdlet New-M365DSCReportFromConfiguration.

La configuration exportée le sera dans un format beaucoup plus facile à lire.

Faire un instantané

Compare configurations

L’établissement de rapports est une excellente chose. Mais la configuration exportée peut également être comparée à la configuration actuelle afin d’identifier tout changement depuis l’exportation initiale. Pour générer une comparaison, apportez quelques modifications, puis exécutez à nouveau l’exportation sous un nom de fichier différent. Cela générera un autre fichier avec la dernière configuration dans le même dossier.

Les fichiers peuvent ensuite être comparés en exécutant la cmdlet New-M365DSCDeltaReport. Précisez les configurations source (Initial), destination (Updated) et un chemin de sortie pour le fichier HTML résultant. La syntaxe de la commande est présentée ci-dessous :

1New-M365DSCDeltaReport -Source ‘C:\DSC\UpdatedConfig.ps1’ -Destination ‘C:\DSC\InitialConfig.ps1’ -OutputPath ‘C:\dsc\Delta.html’

La commande génère le rapport delta HTML illustré à la Figure 5. Ce rapport met en évidence les composants manquants, supplémentaires ou différents détectés lors de la comparaison.

Faire un instantané

Dans cet exemple, le rapport delta montre que la politique d’accès conditionnel « Teams via MCAS » n’est plus présente et que le paramètre « IncludeApplications » de la politique « MFA » a été modifié de « All » à une seule application.

Plus qu’une simple comparaison

La création de rapports et la comparaison ne sont que le début des possibilités de Microsoft 365 DSC. La véritable valeur réside dans l’extension de ce concept à des contrôles de cohérence réguliers et même à la correction automatique des dérives de configuration. DSC peut également être utile pour cloner des locations à des fins de test. Il peut même se déployer dans des conteneurs, Azure Automation et Azure DevOps pour améliorer la gouvernance, le déploiement et la mise à jour des configurations. Pour plus d’informations sur Microsoft 365 DSC, consultez le site Web du projet ici.

Comment travailler avec plusieurs tenants Microsoft 365 ?

Travailler avec plusieurs tenants Microsoft 365

Comment attribuer le rôle « Mailbox Import Export » dans Office 365 ?

Attribution du rôle « Mailbox Import Export » dans Office 365

Retour en haut