Aller au contenu

030 roles rbac

Gérer les rôles Azure intégrés

RBAC - Role-Based Access Control (contrôle d'accès selon le rôle)

  • Rôles Azure RBAC <> Rôle Microsoft Entra ID
  • Permet de sécuriser l'accès aux ressources Azure
  • Chaque rôle possède des autorisations spécifiques : ![[Pasted image 20261021173631.png]]

  • Rôle dans Microsoft entra ID :

    • Possibilité de créer des rôles personnalisés
    • Bonnes pratiques :
      • Toujours accorder les moindres privilèges.
      • Utiliser Priviliged Identity Management (PIM) pour accorder un privilège sur une période spécifique.
      • Systématiser l'authentification multi-facteurs (MFA) pour les comptes administrateurs
      • Planifier des révisions d'accès périodiques afin de confirmer ou révoquer des autorisations

Rôles Azure RBAC (gérer les rôles Azure intégrés - partie 2)

Rôles Azure RBAC

  • Accessible dans le IAM (Identity and Access Management), via le volet Contrôle d'accès (groupe d'administration, abonnements, groupes de ressources, ressources)

  • Assignés à des utilisateurs, groupes et applications:

    • Autoriser un utilisateur à gérer tes machines virtuelles dans un groupe de ressources

    • Autoriser un groupe d'administrateurs de base de données à gérer des bases données SQL dans un abonnement

    • Autoriser une application à accéder à toutes les ressources d'un groupe de ressources

  • RBAC nécessite 3 éléments :

    • Le principal de sécurité (qui) : utilisateur, groupe, principal de service (identité pour une application), identité managée (principal de service automatiquement géré dans Microsoft Entra ID)

    • La définition du rôle (quoi) : collection de permissions regroupées dans un rôle

    • L'étendue du rôle (où) : ressource, groupe de ressources, un abonnement, un groupe d'administration

Rôle RBAC dans Azure

  • Fichier JSON :

    • Nom du rôle
    • Cibles concernées (scopes)
    • Permissions
  • Les groupes de sécurité permettent de regrouper des identités afin de simplifier l’attribution des autorisations. Azure RBAC permet d’accorder à ces groupes, ou directement aux identités qu'ils contiennent, des rôles définissant les actions autorisées sur un périmètre donné :

Mécanisme Rôle
Groupe de sécurité Définit qui est regroupé : par exemple, les développeurs d’une équipe.
Azure RBAC Définit quelles actions ces identités peuvent effectuer et sur quel périmètre : ressource, groupe de ressources ou abonnement.

Rôles sur des étendues

Avec RBAC (Role-Based Access Control), il existe quatre principales définitions de rôles :

  • Propriétaire : accès total à la gestion des ressources et possibilité d’attribuer des rôles dans Azure RBAC.
  • Contributeur : accès total à la gestion des ressources sans possibilité d’attribuer des rôles.
  • Lecteur : affiche toutes les ressources, mais ne dispose d’aucune autorisation de modification.
  • Administrateur de l’accès utilisateur : permet de gérer les accès des utilisateurs aux ressources.

Chaque type de ressource Azure possède également des définitions de rôles spécifiques, consultables via le contrôle d'accès (IAM).

Les rôles sont donc différents selon les portées :

  • La portée la plus englobante est le groupe d’administration, qui inclut des abonnements ou d’autres groupes d’administration.
  • La portée abonnement.
  • La portée groupe de ressources.
  • La portée ressource Azure.

Une ressource hérite des attributions de rôles de sa ressource parente.

Interpréter les attributs d'accès

  • Vue de contrôle d'accès via IAM

    • Sur une ressource
  • Affectations de refus

    • Gérées via Azure Blueprint qui permet de définir un modèle d'utilisation d'abonnement au travers de règles d'autorisation et de refus
  • Une définition de rôle est composées d'un ensemble d'autorisations dans un fichier JSON :

    • Les autorisations Actions : actions autorisées
    • Les autorisations NotActions : actions non autorisées réduisant les autorisations Actions
    • Les autorisations AssignableScopes : étendues où le rôle peut être appliqué (groupe d'administration, abonnement, groupe de ressources, ressource)
  • Fichier JSON listant ce contenu