Passer au contenu principal
Auth0 recommande d’utiliser les paramètres des membres du locataire pour attribuer des capacités d’utilisation du locataire à d’autres utilisateurs et administrateurs de votre organisation. Pour en savoir plus, consultez Dashboard Access.
L’extension d’administration déléguée (DAE) vous permet d’accorder des autorisations administratives à un groupe restreint de personnes sans leur donner accès à d’autres sections.

Configurer le DAE

Pour configurer le DAE, vous devez :
  1. Enregistrer l’application dans Auth0
  2. Créer une connexion de base de données
  3. Désactiver toutes les autres connexions pour l’application Auth0
  4. Créer des utilisateurs pour la connexion de base de données
  5. Attribuer des rôles aux utilisateurs
  6. Installer et configurer l’extension
  7. Utiliser l’extension

Enregistrer l’application dans Auth0

Créez l’application que l’extension d’Administration déléguée exposera aux personnes qui doivent avoir des privilèges d’administration pour la page Utilisateurs. Pour ce faire, créez une application d’administration déléguée dans Auth0. Une fois terminé, prenez note de l’ de l’application.

Créer une connexion de base de données

Dans cet exemple, une connexion de base de données servira de source pour les utilisateurs autorisés à accéder à la zone Utilisateurs. Pour la configurer, créez une connexion de base de données. Lors de la configuration de votre connexion :
  • Utilisez un nom de connexion approprié, comme HelpDesk.
  • Activez l’option Disable Sign Ups. Pour des raisons de sécurité, cela garantit que même les utilisateurs qui disposent du lien vers cette connexion de base de données ne peuvent pas créer eux-mêmes un compte.

Désactiver toutes les autres connexions pour l’application Auth0

Par défaut, Auth0 active toutes les connexions associées à votre locataire lorsque vous créez une nouvelle application. Pour cet exemple, désactivez toutes les connexions sauf la connexion de base de données que vous venez de créer. Cela contribue à sécuriser l’application, car personne ne pourra s’y inscrire en utilisant l’une de vos connexions existantes. Pour ce faire, mettez à jour les connexions de l’application.

Créer des utilisateurs pour la connexion de base de données

Pour continuer, vous devez créer au moins un utilisateur et l’associer à cette connexion.

Attribuer des rôles aux utilisateurs

Bien que l’extension d’administration déléguée (DAE) et l’ensemble de fonctionnalités Authorization Core soient deux fonctionnalités complètement distinctes, vous pouvez utiliser l’ensemble de fonctionnalités Authorization Core pour créer et gérer des rôles pour la DAE à l’aide d’Actions. Pour savoir comment procéder, consultez Exemples de cas d’utilisation : Actions avec Authorization.
Lorsque vous ouvrez une session en tant qu’utilisateur avec les Organisations et l’extension d’administration déléguée (DAE), vos rôles utilisateur ne seront pas disponibles. Seuls les rôles de membre de votre organisation seront disponibles dans event.authorization.roles. Pour ajouter des rôles aux membres d’une organisation, consultez Ajouter des rôles aux membres de l’organisation.
Auth0 accorde l’accès à l’extension d’administration déléguée (DAE) au(x) utilisateur(s) associés à votre connexion en fonction de leurs rôles. Voici les rôles propres à la DAE :
Ce rôle…Accorde l’autorisation de…
Delegated Admin - UserRechercher des utilisateurs, créer des utilisateurs, ouvrir des profils utilisateur et exécuter des actions sur des utilisateurs (comme les supprimer ou les bloquer).
Delegated Admin - AdministratorFaire tout ce que Delegated Admin - User peut faire, en plus de voir tous les journaux du locataire et de configurer Hooks.
Delegated Admin - AuditorRechercher des utilisateurs et consulter les renseignements sur les utilisateurs, sans toutefois pouvoir apporter de modifications. Les boutons d’action ne sont pas visibles pour ce rôle.
Delegated Admin - OperatorAccéder à la gestion des utilisateurs et aux journaux, mais pas à la section de configuration de l’extension.
Lorsque vous travaillez avec des rôles, nous vous recommandons d’utiliser l’ensemble de fonctionnalités Authorization Core :
  1. Créer des rôles DAE. Les noms des rôles que vous créez doivent correspondre aux noms des rôles DAE prédéfinis ci-dessus.
  2. Attribuer manuellement des rôles DAE à un utilisateur.
  3. Ajouter les rôles de l’utilisateur à l’espace de noms DAE dans l’ID Token à l’aide d’Actions** :**
    exports.onExecutePostLogin = async (event, api) => {
      const namespace = `https://{yourTenant}/auth0-delegated-admin`;
      if (event.client.client_id === 'CLIENT_ID' && event.authorization) {
        api.idToken.setCustomClaim(namespace, { "roles": event.authorization.roles });
      }
    };
    
N’oubliez pas de remplacer l’espace réservé CLIENT_ID par l’ID client de votre application d’administration déléguée et de remplacer {yourTenant} par le nom de votre locataire. Par exemple, si le nom de votre locataire est “tenant_name_example”, l’espace de noms serait : https://tenant_name_example/auth0-delegated-admin Pour en savoir plus sur la création d’Actions, consultez Rédiger votre première Action
Auth0 renvoie les informations de profil dans un format structuré de claims, comme défini par la spécification OpenID Connect (OIDC). Cela signifie que les claims personnalisées ajoutées aux jetons d’identité ou aux jetons d’accès doivent respecter les directives et les restrictions afin d’éviter d’éventuelles collisions.
L’utilisation d’Authorization Core définit les rôles dans l’objet context.authorization.Si vous choisissez de ne pas utiliser Authorization Core, vous devez définir les rôles DAE dans l’un des champs suivants du profil utilisateur :
  • user.app_metadata.roles
  • user.app_metadata.authorization.roles

Installer et configurer l’extension

Maintenant que nous avons créé et configuré une application, une connexion et notre utilisateur, nous pouvons installer et configurer l’extension d’administration déléguée.

Utiliser l’extension

Une fois installée, vous êtes prêt à utiliser l’extension d’administration déléguée. Accédez à l’extension à l’aide du lien de connexion approprié pour votre région et le runtime d’extensibilité de votre locataire.
EmplacementNomLien de connexion
AustralieAUhttps://{yourTenant}.au.webtask.io/auth0-delegated-admin
EuropeEUhttps://{yourTenant}.eu.webtask.io/auth0-delegated-admin
EuropeEU-2https://{yourTenant}.eu.webtask.run/auth0-delegated-admin
JaponJP-1https://{yourTenant}.jp.webtask.run/auth0-delegated-admin
Royaume-UniUKhttps://{yourTenant}.uk.webtask.run/auth0-delegated-admin
États-UnisUS-1https://{yourTenant}.us.webtask.io/auth0-delegated-admin
États-UnisUS-3https://{yourTenant}.us.webtask.run/auth0-delegated-admin
Un nouvel onglet s’ouvre et affiche l’invite de connexion. Comme (dans cet exemple) nous avons désactivé les inscriptions pour la connexion de base de données pendant sa configuration, l’écran de connexion n’affiche pas l’option S’inscrire. Une fois que vous avez fourni des identifiants valides, Auth0 vous redirige vers votre page personnalisée Tableau de bord d’administration déléguée, qui affiche en haut de la page le titre que vous avez fourni et, si vous avez fourni un fichier CSS personnalisé, votre mise en forme.

Expiration de la session d’administration déléguée

Par défaut, la durée d’expiration du jeton est de 10 heures. Toutefois, pour des raisons de sécurité, lorsque vous utilisez l’administration déléguée, Auth0 n’enregistre aucun jeton dans les cookies ni dans sessionStorage. Vous devez démarrer une nouvelle session à chaque rechargement de la page.

En savoir plus