Arboric : un gestionnaire d'API dédié à graphQL

Par:
fredericmazue

ven, 20/09/2019 - 10:00

La plupart des passerelles et des gestionnaires d’API se concentrent sur REST, ce qui les rend problématiques pour les environnements GraphQL. Etant donné que GraphQL n’expose qu’un seul point de terminaison et n’utilise généralement que HTTP POST, le contrôle traditionnel basé sur le chemin de requête et les contrôles d’accès ne fonctionnent tout simplement pas. C'est pour pallier cette lacune qu'a été lancé le projet Arboric.

Arboric est écrit en langage Rust. En l'état, (version alpah 0.2) il s'agit surtout d'une preuve de concept. Arboric proprose ces fonctionnalités :

  • Authentification et validation des jetons porteurs JWT par rapport à une clé de signature secrète
  • Analyse des requêtes GraphQL
  • Autorisation de demandes par rapport à une liste blanche de rôles mappés à des requêtes / champs
  • Journalisation des requêtes sur InfluxDB

Les responsables du projet Arboric le décrivent comme un projet ambitieux devant aboutir rapidement à une version de production. Des terminaisons TLS et un assemblage de schémas GraphQL lui seront prochainement ajoutés.

S'il n'existe encore que sous la forme de code source, il est prévu qu'Arboric soit distribué sous forme de packages binaires pour Linux et Mac OS, ainsi que sous forme d'images Docker.

Arboric est un logiciel libre sous licence 2.0, disponible sur GitHub.