Passer au contenu principal
Auth0 propose deux façons de mettre en œuvre le contrôle d’accès basé sur les rôles (RBAC), que vous pouvez utiliser à la place du système interne de contrôle d’accès de votre API ou en combinaison avec celui-ci :Authorization Core offre les mêmes fonctionnalités qu’Authorization Extension, améliore les performances et l’évolutivité, et fournit un système RBAC plus souple qu’Authorization Extension.À l’heure actuelle, les deux offrent les principales fonctionnalités du RBAC et vous permettent de restreindre les scopes personnalisés définis pour une API à ceux qui ont été attribués à l’utilisateur en tant que permissions.
Si vous avez une application accessible à tous au sein de votre entreprise, les utilisateurs sont les personnes auxquelles vous souhaitez accorder l’accès à votre application. Si vous avez un grand nombre d’utilisateurs, gérer individuellement les droits d’accès et les permissions de chacun peut vite devenir difficile. La fonctionnalité groupes permet de simplifier ce processus. Par exemple, vos groupes peuvent refléter les différents services de votre organisation : comptabilité, technologies de l’information, ingénierie, soutien, etc. Vous pouvez aussi créer des groupes imbriqués, par exemple en divisant le groupe d’ingénierie en deux groupes imbriqués : outils internes et applications destinées aux clients. La hiérarchie de votre organisation ressemble donc à ceci :
  • Entreprise
    • Comptabilité
    • Technologies de l’information
    • Ingénierie
      • Outils internes
      • Applications destinées aux clients
    • Soutien
Diagramme des groupes d’entreprise Authorization Extension
Vous pouvez ajouter des utilisateurs à vos groupes manuellement ou de façon dynamique selon la ou les Connexions qu’ils utilisent pour accéder à votre application. Par exemple, si une personne se connecte au moyen de la Connexion Active Directory et que son profil AD indique qu’elle fait partie du groupe Marketing, Authorization Extension peut aussi l’ajouter au groupe Marketing que vous gérez avec l’extension. Enfin, il y a les permissions et les rôles, ces derniers étant des ensembles de permissions. Leur but est de faciliter l’attribution simultanée de plusieurs permissions à un utilisateur ou à un groupe.
Diagramme des rôles et permissions Authorization Extension
Par exemple, vous pourriez vouloir accorder les permissions suivantes :
  • Approuver les demandes de déplacement
  • Approuver les frais de déplacement
Au lieu d’attribuer ces deux permissions à des groupes ou à des utilisateurs, vous pouvez les regrouper (avec bien d’autres) dans un rôle appelé Administrateur des déplacements. Vous pouvez ensuite attribuer Administrateur des déplacements à des utilisateurs individuels ou à un ou plusieurs groupes.
Diagramme des groupes, rôles et permissions Authorization Extension

Utilisateurs

La section Utilisateurs répertorie tous les utilisateurs actuels de vos applications. Vous pouvez y trouver un utilisateur en particulier, consulter son profil, modifier ses appartenances à des groupes et changer ses rôles.
Tableau de bord - Extensions - tableau de bord Authorization - Utilisateurs

Groupes

Pour créer et gérer les groupes qui serviront à gérer les paramètres de vos utilisateurs, cliquez sur Groups dans le tableau de bord Authorization. Cliquez sur Create Group pour créer un nouveau groupe pour vos utilisateurs. Vous devrez fournir un nom pour le groupe, ainsi qu’une description. Vous pouvez gérer vos utilisateurs et leur appartenance à des groupes de l’une des deux façons suivantes :
  • Ouvrir le groupe et gérer les utilisateurs qui y appartiennent
    Dashboard - Extensions - Authorization Extension - Appartenance à un groupe - Gestion des groupes
  • Ouvrir l’utilisateur et gérer sa ou ses appartenances à des groupes
    Dashboard - Extensions - Authorization Extension - Appartenance à un groupe - Gestion des utilisateurs
Les groupes que vous créerez dépendront des besoins de votre organisation. Par exemple, vous pourriez avoir un groupe pour les utilisateurs des finances, un groupe pour les utilisateurs des TI, et ainsi de suite. Vous pouvez également créer des groupes imbriqués, comme dans l’exemple suivant :
  • Entreprise exemple
    • Comptabilité
      • Comptables externes
    • Ressources humaines
    • Finances
      • Soutien TI des finances
    • Direction
Pour créer des groupes imbriqués, vous devez d’abord créer chacun des groupes au moyen du bouton CREATE sur la page Groups du tableau de bord Authorization. Pour imbriquer les groupes :
  1. Ouvrez le groupe de niveau supérieur (dans l’exemple ci-dessus, il s’agirait du groupe Entreprise exemple)
  2. Cliquez sur l’onglet Nested Groups
  3. Cliquez sur le bouton ADD NESTED GROUP. Une liste des groupes pouvant être ajoutés au groupe principal s’affichera. Pour sélectionner un groupe en particulier, cliquez sur la case à cocher à gauche du nom. Après chaque sélection, vous reviendrez à la page du groupe principal. Continuez jusqu’à ce que vous ayez inclus tous les groupes requis.
Avec les groupes imbriqués, l’ajout d’un utilisateur à un sous-groupe lui accorde également les autorisations des groupes parents (et grands-parents) de ce groupe. Par exemple, l’ajout d’un utilisateur au groupe Comptables externes en fait automatiquement un membre des groupes Finances et Entreprise. Toutefois, l’utilisateur n’est explicitement membre que du groupe Comptables externes; toutes les autres appartenances sont purement dynamiques et sont calculées au besoin (par exemple, lors du chargement des appartenances aux groupes de l’utilisateur). Afin d’éviter toute confusion, les membres explicites ET les « membres calculés » résultant des groupes imbriqués s’affichent chaque fois que vous ouvrez la page d’un groupe précis dans le tableau de bord Authorization.

Mappages de groupes

Les mappages de groupes vous permettent d’ajouter dynamiquement des utilisateurs à différents groupes en fonction de leurs connexions. Essentiellement, en utilisant la connexion et les informations de groupe fournies par le , vous pouvez attribuer dynamiquement à l’utilisateur l’appartenance au groupe pour lequel vous avez créé le mappage approprié. Par exemple, supposons que vos utilisateurs ouvrent une session à l’aide de leurs identifiants Active Directory (AD). Dans leur identité, AD permet d’associer des informations de groupe aux utilisateurs (comme « Administrative » et « Marketing »). Vous pouvez ensuite configurer des mappages de groupes pour examiner le profil d’un utilisateur s’il se connecte avec la connexion Active Directory. Lorsque l’extension détecte que la personne fait partie du groupe « Administrative », elle ajoute automatiquement l’utilisateur au groupe Admin de votre entreprise.
Dashboard - Extensions - tableau de bord de l’Authorization Extension - Group Mapping

Rôles

Les rôles que vous créerez dépendront des permissions auxquelles vous voulez donner accès dans votre application. Par exemple, supposons que vous ayez une application qui permet aux employés de saisir les dépenses de l’entreprise. Vous voulez que tous les employés puissent soumettre des notes de frais, mais vous souhaitez que certains utilisateurs du service des finances disposent de privilèges administratifs supplémentaires, comme approuver ou supprimer des dépenses. Ces actions peuvent être associées à des Permissions, puis attribuées à un rôle donné. Vous pouvez créer différents types de rôles, par exemple : administrateurs des dépenses, gestionnaire des dépenses et utilisateur des dépenses pour votre outil de gestion des dépenses.
Dashboard - Extensions - tableau de bord de l’Authorization Extension - Permissions
Pour ajouter un rôle, cliquez sur le bouton CREATE ROLE dans la section Roles du tableau de bord. Choisissez ensuite l’application à laquelle ce rôle s’applique (comme Expense Management Tool), puis ajoutez un nom au rôle (comme Expense Admins) ainsi qu’une description. Sélectionnez ensuite les permissions que vous voulez accorder à ce rôle. Si vous n’avez pas encore créé vos permissions, vous pourrez les ajouter plus tard à un rôle existant.
Dashboard - Extensions - tableau de bord de l’Authorization Extension - Add Role to User
Une fois le Role créé, vous pouvez l’ajouter à un utilisateur pour qu’il obtienne les Permissions associées. Pour ajouter un rôle à un utilisateur, trouvez l’utilisateur dans la section Users, puis cliquez sur l’onglet Roles. Cliquez ensuite sur ADD ROLE TO USER pour choisir les rôles que vous souhaitez attribuer à un utilisateur, puis cliquez sur SAVE.

Permissions

Les permissions sont les actions ou fonctions qui peuvent être ajoutées aux rôles. En reprenant l’exemple précédent d’une application de gestion des dépenses, examinons quelques rôles possibles et la façon dont ils peuvent être associés à certaines permissions :
  • Rôle : Utilisateur de l’application de dépenses
    • Permissions :
      • Consulter ses propres dépenses
      • Ajouter une nouvelle dépense
  • Rôle : Administrateur de l’application de dépenses
    • Permissions :
      • Approuver les dépenses
      • Consulter toutes les dépenses des utilisateurs
      • Supprimer des dépenses
      • Ajouter une nouvelle dépense
Pour créer une nouvelle permission, accédez à la section Permissions du tableau de bord de l’Authorization Extension.
Tableau de bord - Extensions - Tableau de bord de l’Authorization Extension - Permissions
Cliquez ensuite sur le bouton CREATE PERMISSION. Saisissez ensuite le nom de la permission, sa description, puis sélectionnez l’application à laquelle cette permission s’applique.
Tableau de bord - Extensions - Tableau de bord de l’Authorization Extension - Créer une autorisation
Une fois vos permissions créées, vous pouvez les associer à des rôles.

En savoir plus