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 de contrôle d’accès interne de votre API ou en combinaison avec lui :L’ensemble des fonctionnalités Authorization Core correspond aux fonctionnalités d’Authorization Extension, améliore les performances et l’évolutivité, et fournit un système RBAC plus souple qu’Authorization Extension.À ce stade, les deux mettent en œuvre les fonctionnalités clés de RBAC et vous permettent de restreindre les permissions personnalisées définies pour une API à celles qui ont été attribuées à l’utilisateur en tant qu’autorisations.
Vous pouvez importer de nouvelles données à partir d’un fichier JSON ou exporter des données d’autorisation existantes vers ce même fichier. Cela peut s’avérer utile lors d’un changement d’environnement.
Les rôles et les autorisations sont liés à des applications spécifiques. Si vous exportez votre fichier JSON et l’importez dans un environnement différent, vous devrez modifier l’ID client pour ces enregistrements.
  1. Accédez à la section Importation/Exportation en cliquant sur Configuration dans le menu déroulant, accessible en cliquant sur votre nom de locataire en haut à droite du Authorization Dashboard.
    Dashboard - Authorization Extension Dashboard - Configuration
  2. Sélectionnez Importation/Exportation.
    Dashboard - Authorization Extension Dashboard - Configuration - Import Export
  3. Utilisez ce formulaire pour copier et coller ou modifier les données JSON. Cliquez ensuite sur le bouton Importer ou Exporter pour lancer le processus d’importation/exportation. Voici un exemple de fichier JSON :
    {
      "configuration": [
        {
          "_id": "v1",
          "rolesInToken": true
        }
      ],
      "groups": [
        {
          "name": "Admin",
          "description": "Administrators of the company",
          "_id": "f185e4aa-0c28-4da7-8639-ae998512c838"
        },
        {
          "_id": "5f5371c6-c8ff-4c7c-825e-c5ef8ac51cad",
          "name": "HR",
          "description": "Human Resources",
          "members": [
            "auth0|59c13f5ed6e34e41877c0810"
          ],
          "roles": [
            "6ab494d6-2592-4af0-a62f-2c13646143d0"
          ],
          "nested": [
            "59f2adac-9016-4051-ad02-dd5196b8f99e"
          ]
        },
        {
          "name": "Trainers",
          "description": "HR Trainers for New Employees",
          "_id": "59f2adac-9016-4051-ad02-dd5196b8f99e"
        }
      ],
      "permissions": [
        {
          "applicationType": "client",
          "applicationId": "fhginJh46igC6Rj630UeZBhUyDrgvJ08",
          "description": "approve company expenditures",
          "name": "Approve Expenses",
          "_id": "e61f10f4-837e-4011-a52f-53618bd659e7"
        },
        {
          "applicationType": "client",
          "applicationId": "fhginJh46igC6Rj630UeZBhUyDrgvJ08",
          "description": "approve hiring of employees",
          "name": "Hire employees",
          "_id": "03b94d9b-8893-413d-bdb3-451192264594"
        }
      ],
      "roles": [
        {
          "applicationType": "client",
          "applicationId": "fhginJh46igC6Rj630UeZBhUyDrgvJ08",
          "description": "Control over HR-related tasks",
          "name": "HR Manager",
          "permissions": [
            "e61f10f4-837e-4011-a52f-53618bd659e7",
            "03b94d9b-8893-413d-bdb3-451192264594"
          ],
          "_id": "6ab494d6-2592-4af0-a62f-2c13646143d0"
        }
      ]
    }
    

En savoir plus

I