Vous consultez la documentation Apigee Edge.
Accédez à la
documentation**Apigee X**. info
Refactorisé et redirigé vers Sécuriser une API en exigeant des clés API.
Un développeur crée une application qui envoie des requêtes à vos API pour accéder à vos services de backend. Pour contrôler l'accès à vos API, vous pouvez exiger que le développeur transmette une clé API à chaque requête. Si la clé est manquante ou non valide, la requête échoue.
Le processus de publication consiste à mettre vos API à la disposition des développeurs d’applications afin qu’ils puissent les utiliser. La publication d'API peut être définie de manière générale par les tâches suivantes :
- Créez les produits d'API sur Apigee Edge qui regroupent vos API.
- Enregistrez les développeurs d'applications sur Edge. Seul un développeur d'applications enregistré peut enregistrer une application.
- Les développeurs enregistrent des applications sur Edge pour accéder aux produits d'API. En réponse, le développeur reçoit une clé API. Maintenant que le développeur dispose d'une clé API, il peut envoyer des requêtes à vos API.
Pour en savoir plus, consultez la page Présentation du processus de publication.
Le tableau suivant définit certains des termes utilisés pour enregistrer des applications et générer des clés :
| Terme | Définition |
|---|---|
| Produit d'API | Un groupe de proxys d'API associés à un forfait qui définit des limites d'accès à ces API. Les produits d'API constituent le mécanisme central utilisé par Apigee Edge pour l'autorisation et le contrôle des accès à vos API. |
| Développeur | L'utilisateur de l'API. Les développeurs écrivent des applications qui envoient des requêtes à vos API. |
| Application | Une application côté client qu'un développeur enregistre pour accéder à un produit d'API. L'enregistrement de l'application auprès du produit d'API génère la clé API permettant d'accéder aux API de ce produit. |
| Clé API | Une chaîne contenant des informations d'autorisation qu'une application côté client utilise pour accéder aux ressources exposées par le produit d'API. La clé API est générée lorsqu'une application enregistrée est associée à un produit d'API. |
Prérequis pour ce tutoriel
Ce tutoriel suppose que vous avez suivi le premier tutoriel, dans lequel vous créez un proxy d'API pour accéder à l'API Yahoo Weather. Si vous n'avez pas encore suivi le premier tutoriel, consultez la section Sécuriser une API en exigeant des clés API.
Étape 1 : Créer un produit d'API
- Dans l'UI de gestion, cliquez sur l'onglet Publish (Publier), puis sur Products (Produits).
- Cliquez sur (+) Product (+ Produit).
- Saisissez ou sélectionnez les éléments suivants dans les champs de la boîte de dialogue "Add Product" (Ajouter un produit) :
Champ Valeur Nom Free API Product Nom à afficher Free API Product Description Free API Product Environnement test Accès Interne uniquement Type d'approbation des clés Automatique
(la clé API est automatiquement approuvée après sa génération)Quota 10 requêtes par heure
(limite le nombre de requêtes à 10 par heure)Champs d'application OAuth autorisés laisser vide La boîte de dialogue remplie doit se présenter comme suit :

- Dans la section "Resources" (Ressources), sélectionnez :
- Proxy d'API : weatherapikey
- Révision : 1
- Chemin d'accès à la ressource : /forecastrss**
Le chemin d'accès à la ressource spécifie les URI de ressources auxquelles le produit autorise une application à accéder. Dans cet exemple, une application ne peut accéder qu'à la ressource /forecastrss sur le proxy weatherapikey via ce produit d'API. Il est interdit d'essayer d'utiliser ce produit d'API pour accéder à une autre ressource sur le weatherapiproxy proxy ou sur tout autre proxy.
Les caractères génériques sont autorisés pour le chemin d'accès à la ressource. Le caractère générique "/**" indique que tous les sous-URI sont inclus, ce qui signifie une ressource au format /forecastrss/foo/bar. Le caractère générique "/" indique que seuls les URI d'un niveau inférieur sont inclus. Voir Créer des produits API produits pour plus d'informations.
Notez que la liste déroulante Chemin d'accès à la ressource affiche tous les flux conditionnels définis sur le proxy d'API spécifié. Le flux conditionnel d'un proxy d'API définit la logique ou les étapes de traitement associées à un chemin d'accès à la ressource. Un produit d'API contrôle l'accès à ces chemins d'accès aux ressources.

- Cliquez sur Import Resource (Importer une ressource). Le chemin d'accès à la ressource est ajouté, et le weatherapikey proxy d'API est automatiquement ajouté à la section API Proxies for Product.
- Cliquez sur Enregistrer. Votre nouveau produit est listé sur la page "Products" (Produits).
En savoir plus :
Étape 2 : Enregistrer un développeur
Pour générer une clé API, vous enregistrez une application et l'associez à un produit d'API. Toutefois, vous ne pouvez pas enregistrer une application sans d'abord enregistrer le développeur de l'application.
- Dans l'UI de gestion, cliquez sur l'onglet Publish (Publier), puis sur Developers (Développeurs).
- Cliquez sur (+) Developer (+ Développeur).
- Dans la boîte de dialogue "New Developer" (Nouveau développeur), saisissez les valeurs suivantes :
- Prénom : Jane
- Nom : Tutorial
- Adresse e-mail : janetutorial@example.com
- Nom d'utilisateur : jtutorial
- Cliquez sur Enregistrer. Le nouveau développeur apparaît dans la liste des développeurs sur la page "Developers" (Développeurs).
En savoir plus :
Étape 3 : Enregistrer l'application
Maintenant que vous disposez d'un produit d'API et d'un développeur, vous pouvez enregistrer une application auprès du produit d'API. L'enregistrement de l'application génère la clé API pour les produits d'API associés à l'application. Vous pouvez ensuite distribuer la clé aux développeurs d'applications afin qu'ils puissent accéder aux fonctionnalités des produits d'API à partir de l'application.
- Dans l'UI de la plate-forme d'API, cliquez sur l'onglet Publish (Publier), puis sur Developer Apps (Applications de développeur).
- Cliquez sur (+) Developer App (+ Application de développeur).
- Dans la boîte de dialogue "Add an App" (Ajouter une application), saisissez les valeurs suivantes :
- Nom à afficher : API Weather Key App
- Développeur : Jane Tutorial (janetutorial@example.com)
- Callback URL (URL de rappel) : laissez ce champ vide.
- Associez l'application à un produit :
- Dans la section Products (Produits), cliquez sur + Product (+ Produit).
- Sélectionnez Free API Product.
- Cliquez sur l'icône coche pour accepter les modifications.
- Cliquez sur Enregistrer. La nouvelle application apparaît dans la liste des applications sur la page "Developer Apps" (Applications de développeur).
- Sélectionnez Weather API Key App dans la liste des applications. La page d'informations de l'application s'ouvre.
- Étant donné que vous avez sélectionné Key Approval Type: Automatic (Type d'approbation des clés : automatique) lorsque vous avez créé le produit d'API, la clé API est automatiquement approuvée et vous pouvez la consulter immédiatement. (Si vous aviez sélectionné Approval Type: Manual (Type d'approbation : manuel), vous devriez cliquer Approve (Approuver) dans la colonne "Actions" pour "Free API Product" afin d'approuver la clé API.)
- Dans la section "Products" (Produits), à côté de l'entrée "Free API Product", cliquez
Show dans les colonnes Consumer Key et Consumer Secret
(Clé client et Code secret client) pour afficher les clés générées.
La clé client est un autre nom pour la clé API. Il s'agit de la seule clé dont une application a besoin pour accéder à la ressource de prévision via votre proxy d'API. Le code secret client est nécessaire (avec la clé client) pour sécuriser une API via OAuth 2.0. Consultez, par exemple, OAuth 2.0 : configurer un nouveau proxy d'API.
En savoir plus :
Étape 4 : Utiliser la clé API dans une requête
Pour vous assurer que la règle VerifyAPIKey fonctionne correctement, vous devez la tester en faisant un appel au proxy d'API avec une clé API valide. Vous pouvez demander le proxy d'API dans un navigateur, à partir de la page "Trace" du proxy d'API, à partir de la console Apigee ou à l'aide de cURL. L'URL à demander se présente comme suit :
http://{org-name}-test.apigee.net/v1/weatherapikey/forecastrss?w=12797282&apikey=IEYRtW2cb7A5Gs54A1wKElECBL65GVlsRemplacez le nom de votre organisation Apigee par {org-name} et la valeur apikey correcte.
Recherchez le contenu suivant dans la réponse :
<rss xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" version="2.0"> <channel> <title>Yahoo! Weather - Palo Alto, CA</title> <link>http://us.rd.yahoo.com/dailynews/rss/weather/Palo_Alto__CA/*http://weather.yahoo.com/forecast/USCA1093_f.html</link> <description>Yahoo! Weather for Palo Alto, CA</description> <language>en-us</language>
Si vous omettez la clé API de la requête ou si vous spécifiez une valeur de clé non valide, vous recevrez une réponse d'erreur au format suivant :
{"fault":{"faultstring":"Failed to resolve API Key variable null","detail":{"errorcode":"steps.oauth.v2.FailedToResolveAPIKey"}}}
Étape 5 : Où aller ensuite ?
Maintenant que vous avez envoyé une requête à l'API à l'aide d'un paramètre de requête pour transmettre la clé API, modifiez l'API pour transmettre la clé en tant qu'en-tête.
Passez à la section Sécuriser une API en exigeant des clés API.