Passer au contenu principal
Dans ce scénario, nous allons créer une API de feuille de temps pour une entreprise fictive nommée ExampleCo. L’API permettra d’ajouter des entrées de feuille de temps pour un employé ou un sous-traitant. Nous allons également créer une tâche cron qui traitera les entrées de feuille de temps provenant d’un système externe et les transférera vers la base de données centralisée des feuilles de temps au moyen de l’API.

En bref

  • Auth0 fournit l’authentification et l’autorisation des API comme moyen de sécuriser l’accès aux points de terminaison d’API (lire Authentification et autorisation des API)
  • Pour autoriser une application Machine-to-Machine (une CLI, un service ou un daemon sans interaction utilisateur), Auth0 prend en charge l’octroi Client Credentials (lire Client Credentials Grant)
  • L’application Machine-to-Machine et l’API doivent toutes deux être configurées dans le Auth0 Dashboard (lire Configuration d’Auth0)
  • L’API sera sécurisée en veillant à ce qu’un jeton d’accès valide (implémenté sous forme de JSON Web Token) soit transmis dans l’en-tête HTTP Authorization lors des appels à l’API (lire Implémenter l’API)
  • Une fois l’autorisation réussie, un jeton d’accès est émis à l’application Machine-to-Machine (lire Obtenir un jeton d’accès)
  • L’application Machine-to-Machine peut ensuite utiliser ce jeton d’accès en le transmettant dans un en-tête HTTP Authorization pour authentifier les appels aux points de terminaison d’API (lire Appeler l’API)

Le contexte

ExampleCo est une jeune entreprise de services-conseils. Elle compte actuellement environ 100 employés et fait aussi appel à des sous-traitants externes. Tous les employés et sous-traitants externes doivent remplir des feuilles de temps chaque semaine. À cette fin, l’entreprise a créé une application de feuilles de temps, un scénario que nous avons abordé dans Authentification unique pour les applications Web traditionnelles. Les employés utilisent cette application Web pour remplir leurs feuilles de temps, mais certains sous-traitants externes utilisent déjà un autre outil pour en faire le suivi. ExampleCo a besoin d’une solution pour éviter le dédoublement du travail et a décidé de créer une tâche cron pour lire les entrées de feuilles de temps de ce système externe et les téléverser automatiquement dans le back-end d’ExampleCo au moyen d’une API.

Objectifs et exigences

ExampleCo veut créer une solution flexible qui :
  • Permet l’exécution de processus automatisés en arrière-plan
  • Permet d’intégrer à l’architecture de futures applications, comme une application mobile
  • Permet de sécuriser l’API Timesheets et d’en réserver l’accès aux utilisateurs et applications autorisés
  • Permet de réutiliser dans d’autres applications une grande partie du code et de la logique métier

En savoir plus