Comprendre les Identités sur Microsoft Azure

Antoine LOIZEAUAntoine LOIZEAU
9 min read

Introduction

Dans un monde de plus en plus numérique, la gestion des identités devient un enjeu crucial pour les entreprises de toutes tailles. Microsoft Azure, l'une des principales plateformes de cloud computing, propose une gamme complète de services de gestion des identités pour aider les organisations à sécuriser leurs ressources et à garantir un accès approprié aux utilisateurs.

Cet article va explorer les différents types d'identités sur Azure, les pratiques recommandées pour leur gestion et comment elles peuvent contribuer à renforcer la sécurité et l'efficacité opérationnelle de votre entreprise.

Les différentes identités

Sur Azure, les identités jouent un rôle crucial dans la gestion de l'accès aux ressources. Voici une description des principales identités utilisées :

  1. Utilisateurs (Users) : Les identités humaines individuelles qui interagissent avec les applications et services Azure. Elles sont souvent définies dans Azure Entra ID et peuvent inclure des employés, des administrateurs ou des opérateurs.

  2. Principal de Service (Service Principal - SPN) : Les identités utilisées par les applications ou les services pour accéder aux ressources Azure. Elles sont créées dans Azure Entra ID et permettent aux applications de s'authentifier et d'obtenir des autorisations sans intervention humaine. Les SPN sont essentiels pour l'automatisation et les intégrations entre différentes applications et services.

  3. Identités Gérées (Managed Identities) : Ces identités sont attribuées automatiquement par Azure à des services comme les machines virtuelles, les applications web, ou les fonctions Azure. Il en existe deux types :

    • Identités Systèmes (System-Assigned Managed Identities) : Créées et gérées automatiquement par Azure pour un seul service. Si ce service est supprimé, l'identité l'est aussi.

    • Identités Utilisateurs (User-Assigned Managed Identities) : Créées indépendamment et peuvent être assignées à un ou plusieurs services. Elles existent indépendamment des services auxquels elles sont attribuées.

La gestion de ces identités est fondamentale pour assurer la sécurité et l'efficacité des opérations sur Azure. Chacune de ces identités peut être configurée avec des rôles et des autorisations spécifiques pour contrôler l'accès aux ressources.

Plus en détails

Utilisateurs (Users) dans Azure

Les utilisateurs sont des identités humaines individuelles qui interagissent avec les services et applications Azure. Ces identités peuvent être des employés, des administrateurs, des opérateurs, des développeurs, ou toute personne ayant besoin d'accéder aux ressources Azure.

Voici quelques points clés :

  1. Azure Entra ID : C'est la solution d'identité principale utilisée pour gérer les utilisateurs sur Azure. Azure Entra ID permet de créer, gérer et sécuriser les identités des utilisateurs.

  2. Authentification : Les utilisateurs doivent s'authentifier pour accéder aux ressources Azure.
    Azure Entra ID supporte plusieurs méthodes d'authentification, y compris les mots de passe, l'authentification multi-facteurs (MFA), et les identités fédérées (par exemple, l'intégration avec des fournisseurs d'identité tiers comme Google ou Facebook).

  3. Rôles et Autorisations : Les utilisateurs peuvent se voir attribuer des rôles et des autorisations spécifiques qui déterminent leur niveau d'accès aux ressources Azure. Par exemple, un utilisateur peut être un administrateur global, un contributeur ou un lecteur, chaque rôle ayant des permissions spécifiques.

  4. Groupes et Administrations : Pour simplifier la gestion, les utilisateurs peuvent être regroupés en groupes. Les administrateurs peuvent attribuer des rôles et des autorisations à des groupes entiers, ce qui facilite la gestion des accès à grande échelle.

  5. Ajout et suppression: Azure Entra ID permet l'automatisation du provisionnement et du déprovisionnement des utilisateurs, en s'assurant que les nouveaux employés ont accès aux ressources dont ils ont besoin dès le premier jour, et que les accès sont révoqués lorsque quelqu'un quitte l'organisation.

  6. Sécurité et Conformité : La gestion des utilisateurs inclut des fonctionnalités de sécurité avancées comme la détection des anomalies, les politiques de condition d'accès, et les rapports d'audit, ce qui aide les organisations à maintenir la conformité avec les régulations et à protéger les données sensibles.

Ces identités utilisateur sont essentielles pour garantir que seules les personnes autorisées ont accès aux ressources et que chaque utilisateur peut travailler efficacement et en toute sécurité sur la plateforme Azure.

Principal de Service (SPN)

Les SPN sont des identités utilisées par les applications, les services ou les scripts pour accéder aux ressources Azure. Ils jouent un rôle clé dans les scénarios d'automatisation et de sécurité.

Voici quelques points clés à connaître :

  1. Création et Enregistrement :

    • Un Principal de Service est créé dans Azure Entra ID.

    • Il est souvent associé à une application enregistrée dans Azure Entra ID, ce qui permet à l'application de s'authentifier et d'obtenir des autorisations pour accéder aux ressources.

  2. Authentification et Autorisation :

    • Les Principaux de Service utilisent des méthodes d'authentification sécurisées, comme les certificats ou les secrets (mots de passe), pour prouver leur identité.

    • Ils peuvent se voir attribuer des rôles spécifiques qui déterminent leur niveau d'accès aux ressources Azure. Par exemple, un Principal de Service peut avoir le rôle de "Contributeur" sur une ressource spécifique, lui permettant d'effectuer des actions précises.

  3. Utilisation dans les Scénarios d'Automatisation :

    • Les Principaux de Service sont couramment utilisés pour les tâches d'automatisation, comme les scripts de déploiement ou les pipelines CI/CD (Intégration Continue / Déploiement Continu).

    • Ils permettent à ces processus d'accéder aux ressources nécessaires sans intervention humaine, tout en maintenant des niveaux élevés de sécurité.

  4. Meilleures Pratiques :

    • Utilisation de Certificats : Préférer l'utilisation de certificats plutôt que de secrets pour l'authentification, car ils sont considérés comme plus sécurisés.

    • Rotation des Secrets : Si des secrets sont utilisés, il est recommandé de les faire tourner régulièrement pour minimiser les risques de compromission.

    • Least Privilege : Attribuer uniquement les permissions minimales nécessaires au Principal de Service pour accomplir sa tâche, afin de réduire l'impact potentiel en cas de compromission.

  5. Sécurité et Conformité :

    • Azure Entra ID fournit des outils pour surveiller et auditer les activités des Principaux de Service, ce qui aide à garantir la sécurité et la conformité des systèmes.

    • Des politiques de condition d'accès peuvent être mises en place pour contrôler quand et comment les Principaux de Service peuvent accéder aux ressources.

Les Principaux de Service sont essentiels pour permettre aux applications et aux services d'interagir avec les ressources Azure de manière sécurisée et contrôlée.

Identités Gérées (Managed Identities)

Les Identités Gérées (Managed Identities) simplifient la gestion des identités des applications en fournissant une méthode automatisée et sécurisée pour accéder aux ressources Azure.

Voici les principaux aspects à connaître :

  1. Types d'Identités Gérées :

    • Identités Systèmes (System-Assigned Managed Identities) :

      • Créées et gérées automatiquement par Azure pour un seul service, comme une machine virtuelle ou une application web.

      • L'identité est liée à la durée de vie du service. Si le service est supprimé, l'identité l'est également.

    • Identités Utilisateurs (User-Assigned Managed Identities) :

      • Créées indépendamment des services spécifiques et peuvent être assignées à plusieurs services.

      • L'identité existe de manière autonome et continue à exister même si les services auxquels elle est attribuée sont supprimés.

  2. Authentification Automatisée :

    • Les services Azure peuvent utiliser les Identités Gérées pour s'authentifier auprès d'autres services Azure sans nécessiter de gestion manuelle des informations d'identification, comme des clés ou des mots de passe.
  3. Scénarios d'Utilisation :

    • Accès aux Clés et Secrets : Les Identités Gérées peuvent être utilisées pour accéder aux Key Vaults d'Azure, garantissant que les applications peuvent récupérer les clés et secrets nécessaires de manière sécurisée.

    • Accès aux Bases de Données : Elles permettent aux applications de se connecter aux bases de données Azure SQL ou Cosmos DB en utilisant l'authentification intégrée.

    • Accès aux Services de Stockage : Les applications peuvent accéder aux comptes de stockage Azure sans gérer de clés de stockage.

  4. Sécurité et Gestion des Rôles :

    • Les permissions des Identités Gérées peuvent être contrôlées à l'aide de rôles RBAC (Role-Based Access Control) d'Azure. Cela permet de s'assurer que les applications ont uniquement les permissions nécessaires pour accomplir leurs tâches.

    • Azure Entra ID gère la rotation automatique des informations d'identification des Identités Gérées, ce qui renforce la sécurité.

  5. Configuration Facile :

    • Les Identités Gérées peuvent être activées directement via le portail Azure, les CLI (Command Line Interface), ou les API d'Azure, facilitant leur intégration dans les pipelines de déploiement et d'autres scénarios d'automatisation.

Les Identités Gérées offrent une solution pratique et sécurisée pour gérer l'authentification et l'accès des applications aux ressources Azure, réduisant ainsi la charge administrative et les risques liés à la gestion manuelle des informations d'identification.

Comment choisir le type d’identité à utiliser ?

Les différents types d'identités sur Azure sont conçus pour répondre à des besoins spécifiques en matière de gestion de l'accès et de la sécurité.

Voici des recommandations sur quand utiliser chacune de ces identités :

Type d’identitéQuand l’utiliserExemple concret
UtilisateursPour des personnes humaines qui ont besoin d'accéder aux ressources Azure, telles que des administrateurs, développeurs, ou opérateurs. Pour des scénarios où l'authentification humaine est nécessaire, comme la gestion des services, la surveillance des systèmes, ou la configuration manuelle.Un administrateur accédant au portail Azure pour configurer des ressources.
SPNPour les applications ou les services qui nécessitent un accès automatisé aux ressources Azure. Lorsqu'il est nécessaire d'accorder des autorisations spécifiques à une application sans intervention humaine.Un script d'automatisation chez un partenaire qui ajoute des fichiers dans un storage account de façon régulière.
System-Assigned Managed IdentitiesPour les services Azure qui nécessitent un accès sécurisé et sans gestion manuelle des informations d'identification. Lorsqu'il est souhaitable que la gestion des identités soit intégrée directement avec les ressources Azure.Une fonction Azure accédant à un Azure Key Vault pour récupérer des secrets.
User-Assigned Managed IdentitiesPour les scénarios où une identité unique doit être partagée entre plusieurs services. Lorsque l'identité doit exister indépendamment des services auxquels elle est assignée.Un service AKS qui souhaite partager la même identité entre ces nœuds pour consommer une zone de stockage ou un key vault.

En conclusion

La gestion des identités est un élément fondamental de la sécurité et de l'efficacité opérationnelle sur la plateforme Azure. En comprenant les différents types d'identités disponibles — utilisateurs, principaux de service, et identités gérées — les organisations peuvent mieux sécuriser leurs ressources et rationaliser les accès. Chaque type d'identité offre des avantages spécifiques en fonction des besoins : les utilisateurs humains bénéficient d'un contrôle granulaire et d'une sécurité renforcée via Azure Entra ID, les principaux de service facilitent l'automatisation et les intégrations sécurisées, et les identités gérées simplifient la gestion des informations d'identification pour les services Azure.

En adoptant les meilleures pratiques pour chaque type d'identité et en utilisant les outils avancés de gestion et de surveillance d'Azure, les entreprises peuvent améliorer leur posture de sécurité et leur conformité, tout en soutenant une gestion efficace et centralisée des accès.

1
Subscribe to my newsletter

Read articles from Antoine LOIZEAU directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Antoine LOIZEAU
Antoine LOIZEAU

Ayant eu de multiples expériences dans le monde du conseil, j'ai pu acquérir une expertise dans la conception et la construction de services de collaboration d'entreprise. Je suis passionné par les technologies Microsoft et surtout Azure. Aujourd'hui je possède une solide expérience en méthodologie de développement et j'ai mené des équipes de développement technique au succès. Je possède également une solide connaissance de l'infrastructure qui fait de moi une ressource efficace pour mettre en œuvre la transformation numérique vers le cloud Microsoft. Je suis un professionnel efficace et honnête qui aime relever les challenges. Aimant partager mes connaissances; je suis à l'aise en tant que Technical Leader et en tant que membre d'une équipe. Mes compétences techniques sont les suivantes: Azure, DevOps, Architecture Applicative, Développement de solution Cloud Native, écosystème Microsoft... et bien d'autres. Pour voir mes certifications Microsoft : https://www.youracclaim.com/users/antoine-loizeau