À propos de Cloud Endpoints

Endpoints est un système de gestion d'API distribué. Il fournit une console API, l'hébergement, la journalisation, la surveillance et d'autres fonctionnalités pour vous aider à créer, partager, gérer et sécuriser vos API. Vous trouverez sur cette page la présentation de Cloud Endpoints pour OpenAPI. Pour en savoir plus sur les autres types de frameworks d'API compatibles avec Endpoints, consultez toute la documentation sur Endpoints.

Endpoints utilise le proxy distribué Extensible Service Proxy (ESP) pour offrir une latence faible et des performances de diffusion élevées, même pour les API les plus exigeantes. ESP est un proxy de service basé sur NGINX. Vous pouvez donc être sûr qu'il s'adapte en fonction des besoins afin de traiter les requêtes adressées simultanément à votre API. ESP s'exécute dans son propre conteneur Docker pour une meilleure isolation et une meilleure évolutivité. Il est distribué dans Container Registry. Vous pouvez l'utiliser avec l'environnement flexible App Engine, Google Kubernetes Engine (GKE), Compute Engine ou Kubernetes.

Architecture Endpoints

Cloud Endpoints utilise l'infrastructure de service pour gérer les API et générer des rapports de journaux et de métriques. La plupart des API Google Cloud utilisent cette infrastructure. Vous pouvez gérer et surveiller vos API sur la page Services Endpoints de Google Cloud Console.

Héberger une API

Cloud Endpoints est optimisé pour l'environnement de conteneurs Docker. Vous pouvez héberger votre API dans n'importe quel emplacement compatible avec Docker, à condition que cet emplacement dispose d'un accès Internet à Google Cloud.

Toutefois, Cloud Endpoints fournit un workflow optimisé pour exécuter vos API sur les environnements suivants :

  • Instance
  • GKE
  • Environnement flexible App Engine, qui inclut le proxy ESP intégré

Développer une API REST avec Endpoints pour OpenAPI

Endpoints est indépendant du langage. Vous construisez votre API dans le langage de votre choix, avec le framework REST de votre choix, à condition qu'il permette de décrire l'API à l'aide d'un fichier de configuration OpenAPI.

Pour utiliser Endpoints pour OpenAPI, vous devez réaliser les actions suivantes :

  • Configurer Endpoints : décrivez la surface de l'API et configurez les fonctionnalités d'Endpoints (telles que les clés API ou les règles d'authentification) dans un fichier de configuration OpenAPI.

  • Déployer la configuration Endpoints : une fois votre API définie dans un fichier de configuration OpenAPI, utilisez le SDK Cloud pour la déployer dans Service Management utilisé par Endpoints pour gérer votre API. Endpoints sait à présent tout de votre API et sur la manière de la sécuriser.

  • Déployer le backend de l'API : déployez le proxy ESP et le backend de votre API sur un backend compatible avec Google Cloud, tel que Compute Engine. Le proxy ESP se coordonne avec les services backend d'Endpoints pour sécuriser et surveiller votre API au moment de l'exécution.

Contrôler l'accès à l'API

Cloud Endpoints vous permet de configurer votre API de sorte qu'une clé API soit requise pour tout appel et validée par le service. Vous pouvez également utiliser Google Cloud Console pour partager votre API avec d'autres développeurs, afin qu'ils puissent l'activer et générer des clés API pour l'appeler.

Authentifier les utilisateurs de l'API

Un utilisateur est à l'origine de la plupart des appels d'API. Alors que les clés API indiquent l'application qui appelle l'API, le processus d'authentification identifie l'utilisateur qui se sert de cette application.

Notez que votre serveur d'API doit encore décider de ce que l'utilisateur authentifié peut faire avec votre API. Pour plus d'informations, consultez le guide sur l'authentification Google Cloud.

Étape suivante

  • Familiarisez-vous avec les procédures de déploiement et l'utilisation des fonctionnalités de Cloud Endpoints en suivant le guide de démarrage rapide pour Endpoints. Celui-ci utilise des scripts pour déployer un exemple d'API sur un backend flexible App Engine.

  • Découvrez comment utiliser Endpoints en parcourant l'un des tutoriels proposés.