<ph type="x-smartling-placeholder"></ph>
Vous consultez la documentation Apigee Edge.
Accédez à la page
Documentation sur Apigee X. En savoir plus
Edge Microgateway version 3.1.x
Présentation
Après avoir suivi les étapes de ce guide de configuration, vous disposerez d'un appareil Edge opérationnel entièrement configuré Installation de microgateway capable de traiter les requêtes API. Vous testerez la configuration en créant des appels d'API sécurisés via Edge Microgateway vers une cible backend. Vous apprendrez également à ajouter d'arrêt des pics vers Microgateway.
Ce guide est divisé en plusieurs parties:
- Condition préalable: Installation de Edge Micropasserelle
- Partie 1:Configurer Edge Microgateway
- Partie 2: Créer des entités sur Apigee Edge
- Partie 3:Utiliser Edge Micropasserelle
- Partie 4:Secure Edge Microgateway
- Partie 5:Ajouter le plug-in Spike Arrest
- Partie 6: Afficher les données Analytics sur Apigee Edge
Condition préalable: Installer Edge Microgateway
Suivez les instructions de la section Installation d'Edge Microgateway : Une fois l'installation terminée, vous pourrez suivre les étapes de ce tutoriel.
Partie 1: Configurer Edge Micropasserelle
Dans cette partie, vous allez configurer Edge Microgateway à l'aide d'une commande d'interface de ligne de commande (CLI) à communiquer avec Apigee Edge.
- Si vous utilisez Apigee Edge Cloud, suivez les instructions Apigee Edge de configuration Cloud.
- Si vous utilisez le cloud privé Apigee, consultez la documentation Apigee Edge Procédure pour le cloud privé
Étapes de configuration d'Apigee Edge Cloud
Suivez ces étapes pour utiliser Edge Microgateway avec Apigee Edge Cloud:
- Initialisez Edge Microgateway (vous n'avez besoin d'effectuer cette étape qu'une seule fois):
edgemicro init
- Un fichier de configuration nommé
default.yaml
a été placé dans votre maison dans un sous-répertoire appelé.edgemicro
. Vérifiez maintenant que ce fichier existe:ls ~/.edgemicro default.yaml
Remarque : Dans la documentation Edge Microgateway, nous faisons référence au répertoire d'accueil avec le tilde (
~
), qui est un raccourci UNIX. Si vous utilisez Windows, si vous êtes lorsque vous exécutez un shell qui n'est pas compatible avec le tilde, vous devez utiliser le paramètre variable d'environnement pour le tilde dans les commandes qui font référence au répertoire personnel. Pour Exemple:%USERPROFILE%/.edgemicro
. - Toutes les commandes CLI ont une fonction d'aide. Imprimer l'aide pour edgemicro
configure:
edgemicro configure -h
- Exécutez la commande suivante pour configurer Edge Microgateway:
edgemicro configure -o [org] -e [env] -u [username]
Où :
org:
Nom de votre organisation Edge (vous devez être une organisation administrateur).env:
Un environnement dans votre organisation (comme un environnement de test ou produit).username:
L'adresse e-mail associée à votre un compte Apigee.
Remarque:La commande "configure" autorise des paramètres supplémentaires. Pour obtenir consultez Configurer Edge Microgateway pour Apigee Edge Cloud.
Exemple
edgemicro configure -o docs -e test -u jdoe@example.com
Sortie
./edgemicro configure -o docs -e test -u jdoe@apigee.com password: current nodejs version is v12.5.0 current edgemicro version is 3.1.0 password: file doesn't exist, setting up Give me a minute or two... this can take a while... App edgemicro-auth deployed. checking org for existing KVM error checking for cert. Installing new cert. creating KVM adding private_key adding public_key configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1 saving configuration information to: $HOME/.edgemicro/docs-test-config.yaml vault info: -----BEGIN CERTIFICATE----- MIICpDCCAYwCCQCQ2mJZJGbPPTANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls b2NhbGhvc3QwHhcNMTcwOTA3MjA0ODA4WhcNMTcwOTA4MjA0ODA4WjAUMRIwEAYD VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDw yzmqi5CelqqtTr6IaFe1ssrMXEDnNtkBh95U6F5zHLsNQhJcyNUAO9um6FLMSqSd fTztXfWUZzDgmbb6sfbx/9cqpvQ8TIjxyIz8xGM9H4legRQmsCQoYGkLjpPE5ZOa wZrI5IaVm8LY6vbopPFwxgKOQ9bphx6k9Na055DmNyZAOTMD+4I0m/RdsrnZnYih 3DaFj1tXHKZI1jfAt/QOif5Nmk4+JckYwF+9HBysWUbbvj/gnBjVYF2Isb7q7oFD lPGhwFoIebMqHMWD8lG7+9RJDO9dDV6f1g1/9waIrq1D+MoVXos9VMstNrPp0cKF Ue+lAkct8tylH+2MosF7AgMBAAEwDQYJKoZIhvcNAQELBQADggEBAJMRdcQh3ayy csVVT4TYwxV7MKWRfhDRz6X+MM9frB+Z7sI4+ZoZbXKOoZI2hSjmbdLpkNR/m9eJ +1Uk0JKmpSY7Q+1rRrvcHsWNysGf4z+zDJXYECTrtSnXKBXtb9SJ8JAfoZOQD0lA zmKuJjQMLTdiYMHOBR6ZWnaKaRvrQwGHcQrheJm4a90XgZF6jcRR8CPrBzkmsbCp IU/Ux3E17wDGYPxjJs5otyQG8rN/88RGyaSeXK8rjKr9D4KFGJeasXBKmTG2afAr yfBvS4h6s42FCOR/eLpmMllVoO9up71Fa3EtV+aK+FNNY9uMbgUHeLQE7z9nn06q PTmvExZLkLQ= -----END CERTIFICATE----- The following credentials are required to start edge micro key: 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb secret: 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47
Étapes de configuration du cloud privé Apigee
Pour utiliser Edge Microgateway avec le cloud privé Apigee, procédez comme suit:
- Initialisez Edge Microgateway (vous n'avez besoin d'effectuer cette étape qu'une seule fois):
edgemicro init
- Affichez les informations d'aide de la commande edgemicro private configure. Toi
pouvez imprimer l'aide de cette manière pour n'importe quelle commande ou option de commande de la CLI Edge Microgateway.
edgemicro private configure -h
- Exécutez la commande ci-dessous. Il nécessite des informations standards sur votre environnement Apigee Edge
Compte cloud privé: nom de l'organisation, nom de l'environnement, nom d'utilisateur (adresse e-mail), mot de passe,
l'adresse IP du serveur de gestion
et l'adresse IP du routeur. Vous devez être un administrateur de l'organisation Edge pour utiliser cette
:
edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]
Où :
org
est le nom de votre organisation Edge (vous devez être une organisation administrateur).env
est un environnement de votre organisation (comme un environnement de test ou produit).runtime_url
est l'URL d'exécution de votre cloud privé. Compute Engine.mgmt_url
est l'URL du serveur de gestion de votre de votre instance de cloud privé.username
est l'adresse e-mail associée à votre compte Apigee. Google Cloud.-
virtual_host
est une liste d'hôtes virtuels séparés par une virgule. noms. Les valeurs par défaut sontdefault,secure
Exemple
edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.52.106:9001 -m http://192.162.52.106:8080 -v default
ou, si vous avez un alias d'hôte virtuel myorg-test.mycompany.com
, vous devez utiliser un
comme ceci:
edgemicro private configure -o docs -e test -u jdoe@example.com -r myorg-test.mycompany.com -m http://192.162.52.106:8080 -v default
Sortie
delete cache config checking for previously deployed proxies configuring edgemicro internal proxy deploying edgemicro internal proxy deploying edgemicro-auth app copy auth app into tmp dir copy config into tmp deer Give me a minute or two... this can take a while... App edgemicro-auth added to your org. Now adding resources. checking org for existing KVM error checking for cert. Installing new cert. creating KVM adding private_key adding public_key configuring host http://192.168.52.106:9001 for region dc-1 saving configuration information to: $HOME/.edgemicro/jdoe-test-config.yaml vault info: -----BEGIN CERTIFICATE----- MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWsKWBDP9o Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz pFkIxepyr/0= -----END CERTIFICATE----- The following credentials are required to start edge micro key: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4ad09389b645147151ba3 secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac10ace944c097a726a1263 edgemicro configuration complete!
Vérifiez l'installation
Exécutez cette commande pour vérifier l'installation. Si aucune erreur n'est signalée, la configuration est terminée. correctement et vous pourrez démarrer Edge Microgateway correctement.
edgemicro verify -o [org] -e [env] -k [key] -s [secret]
Où :
org
est le nom de votre organisation Edge (vous devez être une organisation administrateur).env
est un environnement de votre organisation (comme un environnement de test ou produit).key
est la clé renvoyée précédemment par la configuration .secret
est la clé renvoyée précédemment par la configuration .
Exemple
edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f624ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0156d7132afbd03625bbd85dc34ebfefae4f23fbcb3c
À propos de la configuration
Toute la configuration effectuée jusqu'à présent permet à Edge Microgateway de s'amorcer vers Apigee. Périphérie. Une fois l'amorçage réussi, Edge Microgateway récupère une charge utile les informations de configuration d'Apigee Edge.
À quoi servent ces informations de configuration ? Comme nous le verrons dans la prochaine partie , au démarrage d'Edge Microgateway, il doit recevoir une liste Proxys d'API compatibles avec les micro-passerelles d'Apigee Edge Dans la partie suivante de ce tutoriel, vous allez créer un proxy compatible avec Microgateway. Edge Microgateway restreint les clients à appeler uniquement les API front par ces proxys d'API compatibles avec Microgateway. Les clients devront, par défaut, de fournir un jeton de sécurité valide pour chaque appel. Pour en savoir plus sur ces proxys, consultez la section ce qu'il faut savoir sur les proxys compatibles avec Edge Microgateway dans la section Présentation d'Edge Microgateway :
En tant qu'administrateur d'entreprise Edge, vous serez intéressé de savoir que les proxys compatibles avec Edge Microgateway peuvent être ajouté aux produits Edge, comme n'importe quel autre proxy. Grâce à l'utilisation de produits applications, vous pouvez générer des jetons de sécurité spécifiques au client pour contrôler l'accès aux API appelées via Edge Microgateway. Encore une fois, les modèles impliqués sont identiques à l'utilisation de n'importe quel proxy d'API, et des applications de développement sur Apigee Edge. Pour en savoir plus sur les produits, commencez par Qu'est-ce qu'un produit d'API ? dans la périphérie dans la documentation Google Cloud.
Nous verrons ensuite comment créer des proxys compatibles avec Edge Microgateway, lancez Edge Microgateway et testez la configuration.
Partie 2: Créer des entités sur Apigee Edge
Dans cette partie, vous allez créer ces entités sur Edge:
- Un <ph type="x-smartling-placeholder"></ph>
Proxy compatible avec la micropasserelle : il s'agit d'un proxy spécial qu'Edge Microgateway peut détecter
au démarrage. Les proxys compatibles avec les microservices utilisent une convention d'attribution de noms que vous devez respecter :
doit être associé à
edgemicro_
. Exemple :edgemicro_hello
ouedgemicro_userinfo
Au démarrage d'Edge Microgateway, depuis Edge une liste de proxys compatibles avec la micropasserelle de la même organisation et du même environnement Edge que vous avez spécifiée lors du démarrage d'Edge Microgateway.
Pour chaque proxy compatible avec la micropasserelle, Edge Microgateway récupère l'URL cible du proxy et son chemin de base. Les proxys compatibles avec les micro-passerelles constituent également un moyen pratique d'associer des analyses les données générées par Edge Microgateway avec un proxy sur la plate-forme Edge. En tant que micropasserelle gère les appels d'API, il transmet de manière asynchrone les données d'analyse à Edge. Les données Analytics s'affichent. dans l'interface utilisateur Edge Analytics sous le ou les noms de proxy compatibles avec la micropasserelle, comme pour toute autre proxy.
- Un produit, un développeur et une application de développeur : Edge Microgateway utilise des produits, développeurs et applications de développement pour activer la sécurité des jetons d'accès OAuth2 ou des clés API. En périphérie La solution Microgateway télécharge toutes les configurations de produit à partir de votre environnement Apigee Edge organisation. Il utilise ces informations pour vérifier les appels d'API effectués via Edge Microgateway avec des clés API ou des jetons d'accès OAuth2.
1. Créer un proxy d'API compatible avec Edge Microgateway sur Edge
- Connectez-vous à votre organisation sur Apigee Edge.
- Sélectionnez Développer > Proxys d'API dans le menu de navigation latéral.
- Cliquez sur + Proxy. L'assistant "Créer un proxy" est appelé.
- Sur la première page de l'assistant, sélectionnez Proxy inverse (le plus courant).
- Cliquez sur Suivant.
- Sur la page "Détails" de l'assistant, effectuez la configuration comme suit. Veillez à bien remplir les champs de l'assistant
exactement comme indiqué:
- Nom du proxy: edgemicro_hello
- Chemin de base du proxy: /hello
- API existante: http://mocktarget.apigee.net/
- Cliquez sur Suivant.
- Sur la page "Sécurité" de l'assistant, sélectionnez Passthrough (none).
- Cliquez sur Suivant.
- Sur la page Hôtes virtuels de l'assistant, acceptez les valeurs par défaut.
- Cliquez sur Suivant.
- Sur la page "Créer" de l'assistant, vérifiez vos paramètres de proxy. Assurez-vous que le paramètre test est sélectionné.
- Cliquez sur Build and Deploy (Compiler et déployer).
2. Créer un produit
<ph type="x-smartling-placeholder">- Dans le menu de navigation latéral, sélectionnez Publier > Produits API.
- Cliquez sur + Produit API. La page "Informations détaillées sur le produit" s'affiche.
- Remplissez la page d'informations détaillées sur le produit comme suit:
<ph type="x-smartling-placeholder">
- </ph>
- Nom:EdgeMicroTestProduct
- Nom à afficher:EdgeMicroTestProduct
- Environnement:test et production
- Access (Accès) : Public
- Key Approval Type (Type d'approbation de clé) : automatique
- Dans "Ressources", cliquez sur + Proxy d'API.
- Sélectionnez edgemicro-auth.
- Cliquez à nouveau sur + Proxy d'API.
- Sélectionnez edgemicro_hello.
- Sélectionnez + Ressource personnalisée.
- Saisissez /**
- Sélectionnez à nouveau + Ressource personnalisée.
- Saisissez /
- Cliquez sur Enregistrer.
3. (Facultatif) Créez un développeur test
Pour les besoins de ce tutoriel, vous pouvez utiliser n'importe quel développeur existant pour l'étape suivante, créer une application de développement. Toutefois, si vous le souhaitez, vous pouvez créer un développeur test maintenant:
- Sélectionnez Publier > Développeurs dans le menu de navigation latéral.
- Cliquez sur + Développeur.
- Remplissez la boîte de dialogue pour créer un développeur test.
4. Créer une application de développement
Vous allez utiliser les identifiants client de cette application pour effectuer des appels d'API sécurisés via Edge Microgateway:
- Sélectionnez Publier > Applications dans le menu de navigation latéral.
- Cliquez sur + App (+ Application). La page "Informations sur l'application pour les développeurs" s'affiche.
- Remplissez la page de l'application du développeur comme suit:
<ph type="x-smartling-placeholder">
- </ph>
- Nom:EdgeMicroTestApp
- Nom à afficher:EdgeMicroTestApp
- Développeur:si vous avez créé un développeur de test, sélectionnez-le. Vous pouvez également utiliser un développeur existant pour les besoins de ce tutoriel.
-
Identifiants:
<ph type="x-smartling-placeholder">
- </ph>
- Sélectionnez Expiration: Jamais.
- Cliquez sur + Produit et sélectionnez EdgeMicroTestProduct. (le produit que vous venez de créer)
- Cliquez sur Enregistrer.
- Vous êtes redirigé vers la page de la liste des applications.
- Sélectionnez l'application que vous venez de créer, EdgeMicroTestApp.
- Cliquez sur Afficher à côté de Clé client et de Consommateur. Secret :
Partie 3: Utiliser une micropasserelle Edge
Maintenant que vous disposez d'une passerelle Edge Microgateway configurée et d'au moins une passerelle compatible avec Edge Microgateway proxy sur Edge, il est temps de démarrer Edge Microgateway. Un serveur HTTP Edge Microgateway exécutera sur votre machine locale. Vous effectuerez des appels d'API directement vers ce serveur.
1. Démarrer Edge Microgateway
Utilisez la commande edgemicro start pour démarrer Edge Microgateway.
- Assurez-vous de disposer des clés qui ont été renvoyées précédemment lorsque vous avez exécuté la requête edgemicro.
configure. Le résultat ressemblait à ceci:
You need key and secret while starting edgemicro instance key: da4778e7c240a5d4585fc559eaba5083328828bc9f3a7f583e8b73e secret: 3aad7439708b4aeb38ee08e82189921ad00e6fc1ba8a8ae9f929ee2
- (Facultatif) Affichez les informations d'aide de la commande
edgemicro start
.
edgemicro start -h
- Pour démarrer Edge Microgateway, exécutez la commande suivante:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
Où :
org
est le nom de votre organisation Edge (vous devez être une organisation administrateur).env
est un environnement de votre organisation (comme un environnement de test ou produit).key
est la clé renvoyée précédemment par la configuration .secret
est la clé renvoyée précédemment par la configuration .
Exemple
edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824
Sortie
La commande start récupère de nombreuses informations de configuration à partir d'Apigee Edge (qui défile jusqu'à la fenêtre de terminal). Le résultat contient une liste de microservices compatibles avec les micro-passerelles les proxies et les produits découverts. À la fin de la sortie, vous devriez voir quelque chose comme ceci:
... current nodejs version is v12.5.0 current edgemicro version is 3.1.0 info: jwk_public_keys download from null returned 200 undefined info: jwt_public_key download from https://docs-test.apigee.net/edgemicro-auth/publicKey returned 200 OK info: products download from https://docs-test.apigee.net/edgemicro-auth/products returned 200 OK info: config download from https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/docs/environment/test returned 200 OK PROCESS PID : 17991
- Vérifiez l'état de la microgateway. Dans une autre fenêtre de terminal, utilisez la commande cd pour accéder au répertoire
vous avez démarré Edge Micro, puis saisissez la commande suivante:
edgemicro status current nodejs version is v12.5.0 current edgemicro version is 3.1.0 edgemicro is running with 8 workers
Que s'est-il passé ?
Une charge utile d'Edge Les informations de configuration de Microgateway sont téléchargées à partir d'Apigee Edge et mises en cache localement. Voici quelques exemples :
- Clé publique que nous avons créée et stockée précédemment dans un mappage de clés-valeurs (KVM, Key Value Map) chiffré.
- Une représentation de tous les proxys compatibles avec Edge Microgateway disponibles dans organisation/environnement. Ce sont tous des proxies nommés avec le préfixe edgemicro_
- Une représentation de tous les produits API qui existent dans le organisation/environnement.
Grâce à ces informations, Edge Microgateway sait quels proxys et chemins de proxy il est autorisé à processus. Elle utilise les informations produit pour renforcer la sécurité (comme n'importe quelle API le proxy sur Apigee Edge, où les clés d'application de développeur sont associées aux produits). Nous y reviendrons les étapes de sécurisation d'Edge Microgateway dans les plus brefs délais.
2. Tester Edge Microgateway
Lorsque Edge Microgateway est en cours d'exécution, vous pouvez appeler le proxy. La configuration Le proxy edgemicro_hello a été téléchargé depuis Edge lorsque vous avez démarré Edge Microgateway. N'oubliez pas que le chemin de base du proxy est /hello.
Pour tester Edge Microgateway, nous commençons par le chemin de base et ajoutons un chemin d'accès à la ressource. /echo. Notez que tout ce qui se trouve après le chemin de base (y compris les paramètres de requête) est simplement transmise à la cible du backend:
curl -i http://localhost:8000/hello/echo {"error":"missing_authorization","error_description":"Missing Authorization header"}
Cette erreur se produit lorsque vous n'avez pas envoyé de clé API ni de jeton d'accès valides avec la requête. Par par défaut, Edge Microgateway requiert une clé API ou un jeton d'accès à chaque appel d'API. Dans À l'étape suivante du tutoriel, nous sécuriserons cette API correctement et vous montrerons comment obtenir un jeton d'accès et l'inclure dans la requête.
4. Arrêter Edge Microgateway
- Dans une fenêtre de terminal distincte, exécutez la commande
cd
pour accéder au même répertoire, où vous avez démarré Edge Microgateway. - Saisissez la commande d'arrêt:
edgemicro stop
Partie 4: Secure Edge Micropasserelle
Vous pouvez sécuriser les appels d'API effectués via Edge Microgateway à l'aide d'une clé API ou d'un à partir d'un jeton d'accès.
Sécuriser les appels d'API avec un jeton d'accès OAuth2
Procédez comme suit si vous souhaitez authentifier les appels d'API avec un jeton d'accès OAuth2:
1. Obtenez les clés requises
- Dans l'interface utilisateur Edge, accédez à l'application de développement que vous avez créée précédemment. Nom de l'application était EdgeMicroTestApp.
- Sur la page de l'application du développeur, affichez la clé client et le code secret client, puis copiez-les. Ces valeurs sont nécessaires pour obtenir un jeton d'accès à l'étape suivante.
2. Obtenir un jeton d'accès
Il existe deux façons d'obtenir un jeton d'accès. Nous allons vous présenter les deux méthodes.
Utiliser la CLI pour obtenir un jeton d'accès
La première méthode est pratique et suit le modèle que nous avons utilisé tout au long de le tutoriel. La deuxième méthode est généralement plus utile pour les applications clientes. les développeurs qui doivent demander des jetons. Le véritable point de terminaison du jeton est implémenté Proxy edgemicro-auth déployé lors de la configuration de Edge Microgateway.
- (Facultatif) Affichez l'aide de la commande token get:
edgemicro token get -h
- Générez le jeton en remplaçant les valeurs "Clé client" et "Code secret client" de la
application de développement que vous avez créée sur Apigee Edge dans les paramètres -i et -s
paramètres:
edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
Où :
org
est le nom de votre organisation Edge (vous devez être une organisation administrateur).env
est un environnement de votre organisation (comme un environnement de test ou produit).consumer_id
est le numéro client dans l'application du développeur que vous créé précédemment.consumer_secret
est le code secret client dans le développeur Application que vous avez créée précédemment.
Exemple
edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy
Sortie (exemple)
current nodejs version is v12.5.0 { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIsVkZ2VNaWNyb1Rlc 3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ. v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4 QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }
(Facultatif) Utiliser l'API pour obtenir un jeton
Si vous avez l'habitude d'appeler des proxys Edge à l'aide de curl ou d'un autre client HTTP, vous serez intéressé de savoir que vous pouvez appeler directement le point de terminaison du jeton, au lieu d'utiliser la méthode edgemicro token. Voici un exemple curl. Remplacez simplement les noms d'organisation et d'environnement l'URL, puis transmettez les valeurs Clé client:Code secret client séparées par le signe deux-points dans un En-tête d'authentification:
curl -i -X POST "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{ "client_id": "your consumer key", "client_secret": "your consumer secret", "grant_type": "client_credentials" }' -H "Content-Type: application/json"
Où :
org
est le nom de votre organisation Edge (vous devez être une organisation administrateur).env
est un environnement de votre organisation (comme un environnement de test ou produit).client_id
est le numéro client dans l'application de développement que vous avez créée. précédemment.client_secret
est le code secret client dans l'application du développeur que vous créé précédemment.
Résultat (exemple)
Que vous ayez utilisé la commande CLI edgemicro token ou appelé la à l'aide de curl, renvoie un jeton d'accès signé pouvant être utilisé pour effectuer des appels client. Exemple:
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFsnhB0Yvg6JKWxKWBDP9o Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik241yfBku7olooXKRKTRKOUoXa q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz pFkIxepyr/0=
3. Vérifiez la configuration dans Edge Microgateway
- Ouvrez le fichier
$HOME/.edgemicro/org-env-config.yaml
. Voir <ph type="x-smartling-placeholder"></ph> Où Edge Microgateway est-il installé si vous ne trouvez pas ce fichier. - Assurez-vous que les propriétés du plug-in OAuth sont définies sur false. Ils sont faux en
par défaut, mais nous vous recommandons de vérifier les éléments suivants:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- Toujours dans le fichier
org-env-config.yaml
, assurez-vous que le plug-in OAuth est ajouté à l'élémentplugins:sequence
, comme ceci :plugins: dir: ../plugins sequence: - oauth
- Si vous apportez des modifications au fichier, actualisez les modifications dans le fichier
Instance Edge Microgateway. Cette commande reconfigure Edge Microgateway sans temps d'arrêt:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Où :
org
est le nom de votre organisation Edge (vous devez être une organisation administrateur).env
est un environnement de votre organisation (comme un environnement de test ou produit).key
est la clé renvoyée précédemment par la configuration .secret
est la clé renvoyée précédemment par la configuration .
Exemple
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
4. Appeler l'API de manière sécurisée
Avec un jeton d'accès, vous pouvez maintenant effectuer l'appel d'API de manière sécurisée. Exemple :
curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl 9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PL30Y6uK1W1f2ONPEsBDB_BT31c6 IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx 4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0 64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo
L'API renvoie les en-têtes et d'autres informations à partir du serveur fictif.
Sécuriser l'API avec une clé API
Si vous souhaitez utiliser une clé API pour l'autorisation, procédez comme suit:
1. Obtenir la clé API
- Dans l'interface utilisateur Edge, accédez à l'application de développement que vous avez créée précédemment. Nom de l'application était EdgeMicroTestApp.
- Sur la page de l'application du développeur, affichez la clé client et copiez-la. Cette valeur correspond à l'API . Vous utiliserez cette clé pour effectuer des appels d'API authentifiés.
2. Vérifiez la configuration dans Edge Microgateway
- Ouvrir le fichier
$HOME/.edgemicro/org-env-config.yaml.
Voir où Edge Microgateway est-il installé si vous ne le trouvez pas. - Assurez-vous que les propriétés du plug-in OAuth sont définies sur false. Ils sont faux en
par défaut, mais vous pouvez vérifier si vous le souhaitez:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- Toujours dans le fichier
org-env-config.yaml
, assurez-vous que le plug-in OAuth est ajouté à l'élémentplugins:sequence
, comme ceci :plugins: dir: ../plugins sequence: - oauth
- Si vous apportez des modifications au fichier, actualisez les modifications dans le fichier
Instance Edge Microgateway. Cette commande reconfigure Edge Microgateway sans temps d'arrêt:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Où :
org
est le nom de votre organisation Edge (vous devez être une organisation administrateur).env
est un environnement de votre organisation (comme un environnement de test ou produit).key
est la clé renvoyée précédemment par la configuration .secret
est la clé renvoyée précédemment par la configuration .
Exemple
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c30177d64a88754d615c74e1f78b6181d
3. Appeler l'API de manière sécurisée avec une clé API
Appelez l'API avec l'en-tête x-api-key comme suit. La valeur de la clé client que vous copiée depuis l'application du développeur est la clé API. Par défaut, Edge Microgateway s'attend à ce que vous transmettiez la clé dans un en-tête appelé x-api-key, comme ceci:
curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"
Où :
apikey
est la valeur de la clé client issue de EdgeMicroTestApp.
Exemple :
curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxd0ilYQ5szwuljr5bB'
Vous disposez désormais d'une Edge Microgateway entièrement fonctionnelle et sécurisée. Dans la partie suivante du nous allons examiner les plug-ins qui ajoutent des fonctionnalités à Edge Microgateway.
Partie 5: Arrêter l'arrestation des pics plug-in
Dans cette partie, nous ajouterons une fonctionnalité de limitation du débit appelée arrêt des pics à votre instance d'Edge Microgateway.
Que sont les plug-ins ?
Un plug-in est un module Node.js qui ajoute des fonctionnalités à Edge Microgateway. Modules de plug-ins suivent un schéma cohérent et sont stockés dans un emplacement connu d'Edge Microgateway, microgateway afin de les détecter et de les charger automatiquement. Pour en savoir plus sur les plug-ins, consultez Utilisez des plug-ins.
Ajouter un plug-in d'arrêt des pics
Un pic plug-in arrest protège contre les pics de trafic. Elle limite le nombre de requêtes traitées par une instance Edge Microgateway.
Dans Edge Microgateway, l'arrêt des pics est implémenté en tant que module de plug-in. Pour l'activer, vous devez pour l'ajouter au fichier de configuration Edge Microgateway.
- Ouvrir le fichier
$HOME/.edgemicro/org-env-config.yaml.
Où Edge Microgateway est-il installé si vous ne le trouvez pas. - Ajoutez l'élément suivant. Vous pouvez l'ajouter n'importe où dans le fichier.
spikearrest: timeUnit: minute allow: 10 buffersize: 0
- Ajoutez
spikearrest
à l'élémentedgemicro:sequence
, comme indiqué. ci-dessous. La propriété de configuration de la séquence indique à Edge Microgateway l'ordre dans lequel modules de plug-in sont exécutés.edgemicro: home: ../gateway port: 8000 max_connections: -1 max_connections_hard: -1 logging: level: info dir: /var/tmp stats_log_interval: 60 plugins: dir: ../plugins sequence: - oauth - spikearrest
- Enregistrez le fichier de configuration.
- Actualisez Edge Microgateway à l'aide de la commande reload. Vous devez exécuter
à partir du répertoire dans lequel vous avez démarré Edge Microgateway.
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Où :
org
est le nom de votre organisation Edge (vous devez être administrateur de l'entreprise).env
est un environnement de votre organisation (comme un environnement de test ou produit).key
est la clé renvoyée précédemment par la configuration .secret
est la clé renvoyée précédemment par la configure.
Exemple
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
- Essayez d'appeler l'API plusieurs fois à la suite. Après le deuxième appel, Edge
Microgateway renvoie l'erreur suivante:
{"message":"SpikeArrest engaged","status":503}
En effet, l'arrêt des pics d'activité atténue le nombre d'appels pouvant être effectués unité de temps spécifiée. Dans cet exemple, vous pouvez passer 10 appels par minute, soit un tous les 6 secondes.
Bonus: ajout du plug-in de quota
En suivant le même schéma que celui utilisé pour configurer l'arrêt des pics, vous pouvez ajouter d'autres plug-ins, plug-in de quota Comme pour l'arrêt des pics, le plug-in de quota est inclus dans chaque installation d'Edge Microgateway. A Le quota spécifie le nombre de messages de requête qu'une application est autorisée à envoyer à une API via un l'intervalle de temps spécifié (minutes ou heures).
Partie 6: Affichage sur Apigee Edge
Nous disposons maintenant d'une instance Edge Microgateway entièrement fonctionnelle. Voyons ce qui s'est passé ! Par défaut, le module du plug-in d'analyse est ajouté à Edge Micro. Ce module transmet silencieusement d'Edge Micro à Apigee Edge, où elles sont utilisées par le système Edge Analytics. Voyons:
- Connectez-vous à votre organisation sur Apigee Edge.
- Sélectionnez Analytics > Performances des proxys.
- Dans le tableau de bord Performances du proxy, sélectionnez le proxy edgemicro_hello.
- Le graphique présente des informations sur les tendances du trafic du proxy, telles que le trafic total, temps de réponse moyen, temps de réponse cible moyen, etc.
Vous pouvez en savoir plus sur les tableaux de bord Edge Analytics sur la page d'accueil Tableaux de bord Analytics dans la Documentation Edge. Pour en savoir plus sur les plug-ins, consultez Utiliser des plug-ins.