Passer au contenu principal
Auth0 recommande d’utiliser les paramètres des membres locataires pour désigner les capacités d’utilisation des locataires à d’autres utilisateurs et administrateurs dans votre organisation. Pour en savoir plus, consultez Accès au Dashboard.
Delegated Administration Extension (DAE/Extension d’administration déléguée) vous permet d’accorder des autorisations administratives à un groupe de personnes sélectionnées sans leur donner accès au reste du tableau de bord.

Configuration de la DAE

Pour configurer la DAE, vous devez :
  1. Enregistrement de votre application avec Auth0
  2. Création d’une connexion à une base de données
  3. désactiver toutes les autres connexions pour l’application Auth0,
  4. Créer des utilisateurs pour une connexion à une base de données
  5. Attribution de rôles aux membres
  6. Installation et configuration de l’extension
  7. Utilisation de l’extension

Enregistrement de votre application avec Auth0

Créez l’application que l’extension d’administration déléguée exposera à ceux qui devraient avoir des privilèges administratifs pour la page Users (Utilisateurs). Pour ce faire, créez une application d’administration déléguée dans Auth0. Lorsque vous avez terminé, notez l’ID client de l’application.

Création d’une connexion à une base de données

Dans cet exemple, une connexion à une base de données servira de source pour vos utilisateurs qui sont autorisés à accéder à la zone Utilisateurs. Pour ce faire, créez une connexion à la base de données. Lors de l’établissement de votre connexion :
  • Choisissez un nom de connexion approprié, comme HelpDesk.
  • Activez la bascule Disable Sign Ups(Désactiver les inscriptions). Pour des raisons de sécurité, cela garantit que même les utilisateurs qui ont le lien vers la connexion à la base de données ne peuvent pas s’inscrire eux-mêmes.

Désactivation de toutes les autres connexions pour l’application Auth0M

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 autres que la connexion à la base de données que vous venez de créer. Cela contribue à sécuriser l’application car personne ne peut s’ajouter en utilisant l’une de vos connexions existantes. Pour ce faire, mettez à jour les connexions de l’application.

Création d’utilisateurs pour une connexion à une base de données

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

Attribuer des rôles aux utilisateurs

Bien que Delegated Administration Extension (DAE) (Extension d’administration déléguée) et l’ensemble de fonctionnalités Authorization Core soient des 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 en savoir plus, consultez Exemples de cas d’utilisation : actions avec Authorization.
Lorsque vous vous connectez en tant qu’utilisateur à l’aide d’organizations dotées de l’extension Delegated Administration (DAE), vos rôles d’utilisateur ne seront pas disponibles. Seuls les rôles de membre de votre organization seront disponibles dans event.authorization.roles. Pour ajouter des rôles aux membres de l’organisation, consultez Ajouter des rôles aux membres de l’organisation.
Auth0 accorde l’accès à l’extension DAE aux utilisateurs associés à votre connexion en fonction de leurs rôles. Il s’agit de rôles spécifiques à la DAE :
Ce rôle…Accorde l’autorisation de…
Delegated Admin - UserRechercher des utilisateurs, créer des utilisateurs, ouvrir des utilisateurs et exécuter des actions sur les utilisateurs (telles que supprimer ou bloquer).
Delegated Admin - AdministratorEffectuer tout ce que l’administrateur délégué - Utilisateur peut effectuer, plus afficher tous les journaux du locataire et configurer les hooks.
Delegated Admin - AuditorRechercher des utilisateurs et afficher les informations des utilisateurs, mais ne pas apporter de modifications. Les boutons basés sur l’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 des extensions.
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. Ajoutez des rôles d’utilisateur à l’espace de noms DAE dans le jeton d’ID à l’aide des 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 le paramètre fictif CLIENT_ID par l’ID client et {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éations d’actions, consulter Créer votre première action
Auth0 renvoie les informations de profil contenues dans un format de demande structuré tel que défini par la spécification OpenID Connect (OIDC). Cela signifie que les demandes personnalisées ajoutées aux jetons d’ID ou aux jetons d’accès doivent respecter des directives et des restrictions pour éviter d’éventuels conflits.
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

Installation et configuration de 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.

Utilisation de l’extension

Une fois installée, vous êtes prêt à utiliser l’extension Delegated Admin. Naviguez vers l’extension en utilisant le 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
UKUKhttps://{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, affichant l’invite de connexion. Étant donné que (dans cet exemple) nous avons désactivé les inscriptions pour la connexion à la base de données lors de sa configuration, l’écran de connexion n’affiche pas d’option S’inscrire. Une fois que vous fournissez des identifiants valides, Auth0 vous redirige vers la page personnalisée de votre tableau de bord d’administration déléguée, laquelle présente le titre que vous avez renseigné en haut de la page et votre conception (si vous avez fourni un fichier CSS personnalisé).

Délai d’inactivité de session d’administration déléguée

Par défaut, le délai 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 pas un jeton dans les témoins ou sessionStorage. Vous devez démarrer une nouvelle session lorsque vous actualisez chaque page.

En savoir plus

I