Applications serveur avec API

Dans ce scénario, nous allons créer une API de feuilles de temps pour une entreprise fictive appelée ExampleCo. L’API permettra à un employé ou un sous-traitant d’ajouter des entrées supplémentaires dans les feuilles de temps.

Nous allons également créer une tâche Cron qui traitera, à l’aide de l’API, les entrées des feuilles de temps dans la base de données centralisée des feuilles de temps depuis un système externe.

TL;DR

  • Auth0 fournit l’authentification et l’autorisation API comme moyens de sécuriser l’accès aux points de terminaison de l’API (voir Authentification et autorisation API)
  • Pour autoriser une application de communication entre machines (une interface ligne de commande, un service ou un démon sans interaction avec l’utilisateur), Auth0 prend en charge l’octroi Identifiants Client (voir Octroi Identifiants Client )
  • L’application de communication entre machines et l’API doivent être configurées dans Auth0 Dashboard (voir Configuration Auth0)
  • L’API sera sécurisée en s’assurant qu’un jeton d’accès valide (qui est implémenté comme un jeton Web JSON) est transmis dans l’en-tête d’autorisation HTTP lors des appels à l’API (voir Mettre en œuvre l’API)
  • En cas d’autorisation réussie, un jeton d’accès est délivré à l’application de communication entre machines (voir Obtenir un jeton d’accès)
  • L’application de communication entre machines peut à son tour utiliser ce jeton d’accès pour le transmettre en tant qu’en-tête d’autorisation HTTP afin d’authentifier les appels aux points de terminaison de l’API (voir Appeler l’API ) :::

Les prémisses

ExampleCo est une société de conseil en démarrage. Elle emploie actuellement une centaine de personnes et fait également appel à des sous-traitants. Tous les employés et les sous-traitants externes sont tenus de remplir leurs feuilles de temps chaque semaine. Pour ce faire, la société a développé une application de feuilles de temps, un scénario que nous avons abordé dans Authentification unique pour les applications Web classiques. Les employés utilisent cette application Web à l’interne pour remplir leur feuille de temps, mais certains sous-traitants utilisent déjà un autre outil. ExampleCo doit trouver une solution pour éviter les doublons et a décidé de créer une tâche Cron pour lire les entrées de la feuille de temps de ce système externe et les téléverser automatiquement vers le système dorsal de ExampleCo à l’aide d’une API.

Objectifs et exigences

ExampleCo souhaite mettre en place une solution flexible qui permet :

  • L’automatisation des processus exécutés sur le système dorsal

  • Le lancement des applications futures (par ex., des applications mobiles) dans l’architecture.

  • La sécurisation de l’API des feuilles de temps et l’accès par les applications et utilisateurs autorisés.

  • Le partage d’une grande partie du code et de la logique commerciale de l’application avec d’autres applications.

En savoir plus