Créer l’API
- Nom : un nom convivial pour l’API. Cela n’affecte aucune fonctionnalité.
- Identifiant : un identifiant unique pour l’API. Nous vous recommandons d’utiliser une URL, mais notez qu’elle n’a pas besoin d’être accessible publiquement, car Auth0 n’appellera jamais votre API. Cette valeur ne peut pas être modifiée par la suite.
- : l’algorithme utilisé pour signer les jetons. Les valeurs possibles sont
HS256etRS256. Si vous sélectionnezRS256, le jeton sera signé à l’aide de la clé privée du locataire. Pour en savoir plus sur les algorithmes de signature, consultez Signing Algorithms.

Configurer les scopes
read:timesheets, create:timesheets, delete:timesheets et approve:timesheets.

Créer l’application
- Application native (utilisée par les applications mobiles ou de bureau),
- Application Web monopage,
- Application Web classique et
- Application machine à machine (utilisée par les CLI, les démons ou les services qui s’exécutent sur votre backend).
Single-Page Web App.
Pour créer une nouvelle application, accédez à l’Auth0 Dashboard, puis cliquez sur l’option de menu Applications à gauche. Cliquez sur le bouton + Create Application.
Attribuez un nom à votre application (nous utiliserons Timesheets SPA) et sélectionnez Single-Page Web App comme type.
Cliquez sur Create.
C’est tout pour le moment. Une fois l’implémentation de la SPA terminée, nous reviendrons dans l’Auth0 Dashboard et dans les paramètres de cette application pour apporter quelques modifications à sa configuration.
Vous devez vous assurer qu’Authorization Extension est installée pour votre locataire. Consultez la documentation d’Authorization Extension pour savoir comment faire.
Définir les permissions
read:timesheets, create:timesheets, delete:timesheets et approve:timesheets.
Dans l’Authorization Extension, cliquez sur l’onglet permission, puis sur le bouton Create Permission.
Dans la boîte de dialogue, saisissez les renseignements pour chaque permission.
Assurez-vous que le nom de la permission est exactement le même que le scope correspondant :

Définir des rôles
Employee, puis sélectionnez les autorisations delete:timesheets, create:timesheets et read:timesheets. Cliquez sur Save.
Ensuite, suivez le même processus pour créer un rôle Manager, en vous assurant d’avoir sélectionné toutes les autorisations.
Attribuer des utilisateurs à des rôles
Manager ou le rôle Employee.
Pour ce faire, accédez à l’onglet Utilisateurs dans Authorization Extension et sélectionnez un utilisateur.
Dans l’écran d’information de l’utilisateur, accédez à l’onglet rôles. Cliquez sur Add Role to User, puis sélectionnez le rôle approprié.
Vous devez également vous assurer que la Rule de l’Authorization Extension est publiée.
Pour ce faire, cliquez sur votre avatar dans le coin supérieur droit de l’Authorization Extension, puis sélectionnez Configuration.
Assurez-vous que les permissions sont activées, puis cliquez sur Publish Rule.
Créer une Rule pour valider les scopes du jeton
action:area ou delete:timesheets) qui sont valides selon les permissions de l’utilisateur. Une fois cela fait, vous pouvez cliquer sur le bouton Enregistrer.
Les Rules s’exécutent dans l’ordre où elles sont affichées sur la page Rules. Assurez-vous donc que la nouvelle Rule que vous avez créée est placée sous la Rule de l’Authorization Extension, afin qu’elle s’exécute après la Rule de l’Authorization Extension.