Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Dans cet article, vous découvrirez comment mettre en œuvre les meilleures pratiques de Microsoft Entra PowerShell, notamment l’enregistrement des applications, les améliorations de sécurité, les optimisations des performances et les stratégies de maintenance.
La compréhension de ces pratiques est essentielle pour réduire les risques de sécurité, optimiser les performances et gérer les systèmes up-to-date. Il est essentiel de protéger les données sensibles et de garantir des opérations fluides dans n’importe quelle organisation.
Inscrire une application au lieu d’utiliser une application d’entreprise
Vous pouvez inscrire vos propres applications adaptées à différents cas d’usage avec des autorisations spécifiques, telles que pour les équipes marketing ou de support technique. Cette approche permet une gestion des autorisations plus granulaire et réduit l’impact de la sécurité si une application est compromise. Pour créer une application inscrite, consultez Créer une application personnalisée.
Connectez-vous à l’aide de l’application que vous inscrivez en exécutant :
Connect-Entra -ClientId <your-custom-app-id> -TenantId <your-tenant-id>
Vous pouvez également utiliser les alias AppId ou ApplicationId à la place de ClientId.
Security
Appliquez les meilleures pratiques de consentement et d’autorisation suivantes dans votre application pour améliorer la sécurité :
Appliquer le privilège minimum : accordez aux utilisateurs et aux applications uniquement l’autorisation privilégiée la plus faible dont ils ont besoin pour appeler la ressource Microsoft Entra. Choisissez les autorisations les moins privilégiées. Par exemple, si l’application lit uniquement le profil de l’utilisateur actuellement connecté, accordez
User.Readau lieu deUser.ReadBasic.All. Pour obtenir la liste complète des autorisations, consultez les informations de référence sur les autorisations.Utilisez Disconnect-Entra : exécutez toujours Disconnect-Entra pour supprimer toutes les informations d’identification et contextes associés à un compte. Cette applet de commande nettoie et ferme correctement les connexions lorsqu’elles ne sont plus nécessaires. Cela réduit le risque d’accès non autorisé si la session est laissée ouverte ou si quelqu’un d’autre accède à votre environnement PowerShell.
Utilisez le type d’autorisation correct en fonction des scénarios : évitez d’utiliser les autorisations déléguées et d’application dans la même application. Si vous créez une application interactive où un utilisateur connecté est présent, votre application doit utiliser des autorisations déléguées. Toutefois, si votre application s’exécute sans utilisateur connecté, telle qu’un service ou un démon en arrière-plan, votre application doit utiliser des autorisations d’application.
Soyez réfléchi avec les autorisations d’application : évitez d’utiliser des autorisations d’application pour des scénarios interactifs afin d’éviter les risques de sécurité et de conformité, car il peut involontairement élever les privilèges d’un utilisateur et contourner les stratégies d’administrateur.
Soyez réfléchi lors de la configuration de votre application : la configuration affecte les expériences utilisateur final et administrateur, ainsi que l’adoption et la sécurité de l’application. Par exemple:
- Le nom, le logo, le domaine, l’état de vérification de l’éditeur, la déclaration de confidentialité et les conditions d’utilisation de votre application s’affichent dans le consentement et d’autres expériences. Configurez attentivement ces paramètres afin que vos utilisateurs finaux les comprennent.
- Envisagez qui consent à votre application ( utilisateurs finaux ou administrateurs) et configurez votre application pour demander des autorisations de manière appropriée.
- Vérifiez que vous comprenez la différence entre le consentement statique, dynamique et incrémentiel.
Surveillez le glissement des autorisations : gardez un œil sur les autorisations qui s’accumulent pour l’application inscrite au fil du temps.
Tirez parti des valeurs par défaut de sécurité et de l’accès conditionnel : protégez les utilisateurs avec Microsoft Entra l’authentification multifacteur à l’aide de l’accès conditionnel (pour les organisations sous licence) et les valeurs par défaut de sécurité (pour les organisations non autorisées).
Exploiter les recommandations Microsoft Entra - La fonctionnalité Recommandations Microsoft Entra surveille en permanence l'état de votre locataire afin de garantir sa sécurité et son bon état. Vous avez une visibilité sur les applications utilisées, les informations d’identification arrivant à expiration, les applications sur-privilégiées entre autres.
Limiter la connexion de l’application aux identités affectées uniquement : la
Assignment Requiredpropriété permet de gérer l’accès aux applications en veillant à ce que seuls les utilisateurs affectés puissent se connecter.
Connect-Entra -Scopes 'Application.ReadWrite.All'
Get-EntraServicePrincipal -Filter "DisplayName eq 'Contoso Demo App'" | Set-EntraServicePrincipal -AppRoleAssignmentRequired $true
Optimisations des performances
Les pratiques suivantes peuvent vous aider à optimiser les performances lors de l’utilisation de Microsoft Entra PowerShell :
Utiliser un filtre
Le filtrage est effectué côté serveur en limitant votre sélection pour récupérer un sous-ensemble d’une collection, ce qui permet de réduire le trafic réseau et le traitement des données inutiles.
Get-EntraUser -Filter "startsWith(DisplayName,'Ada')"
Sélectionner uniquement les propriétés requises
Sélection des propriétés requises à l’aide du -Property paramètre pour obtenir uniquement les propriétés requises.
Définir la taille de la page
Pour les demandes qui retournent de nombreux objets, augmentez la taille de la page à sa valeur maximale de 999 à l’aide-top du paramètre.
Get-EntraUser -All -Top 999
Maintenance
Appliquez les bonnes pratiques de maintenance suivantes pour vous assurer que vos Microsoft Entra module PowerShell et les scripts sont à jour et fonctionnent de manière optimale :
Maintenir Microsoft Entra module PowerShell à jour
La mise à jour de votre module est cruciale pour plusieurs raisons. Tout d’abord, il vous permet de bénéficier des dernières fonctionnalités et améliorations, ce qui vous permet d’avoir accès aux applets de commande et fonctionnalités les plus récentes. Plus important encore, les mises à jour régulières améliorent votre posture de sécurité. Notre équipe implémente constamment des correctifs et des correctifs de sécurité, ce qui contribue à protéger vos systèmes contre les vulnérabilités.
Conseil
Si vous utilisez Microsoft Entra PowerShell avec Azure Automation, mettez à jour les modules PowerShell dans vos comptes Azure Automation.
Update-Module -Name Microsoft.Entra
Après avoir mis à jour votre module, supprimez les versions antérieures.
Utiliser Get-Help
Get-Help fournit une documentation complète directement dans la ligne de commande. Il fournit des informations détaillées sur les applets de commande PowerShell de Microsoft Entra, les fonctions, les scripts et les concepts, notamment des exemples d’utilisation, les paramètres acceptés et les données de sortie. Get-Help favorise l’efficacité des scripts et permet d’éviter les erreurs courantes.
Get-Help Get-EntraUser -Detailed
Utiliser l’option de débogage
-Debugvous aide à résoudre les problèmes en fournissant des informations de diagnostic détaillées lorsque vous interagissez avec Microsoft Entra PowerShell. Il peut vous aider à comprendre exactement le fonctionnement de vos scripts et l’endroit où des problèmes peuvent survenir pendant la phase de développement et de test.
Get-EntraUser -Top 1 -Debug
Pour envoyer le flux de sortie de débogage dans un fichier journal, utilisez :
Get-EntraUser -Top 1 -Debug 5>> <your-log-filepath>
-
5- représente le numéro de flux,Debug Stream. Pour plus d’informations sur les flux, consultez Flux de sortie. -
>>- représente l’opérateur de redirection. Pour plus d’informations sur les opérateurs de redirection, consultez Opérateurs de redirection.