Estás viendo la documentación de Apigee Edge.
Ir a la documentación de
Apigee X. info
Descripción general
En este instructivo, se explican los pasos necesarios para poner en funcionamiento una instancia de Edge Microgateway.
Después de completar los pasos que se indican aquí, tendrás una instalación de Edge Microgateway completamente configurada y en funcionamiento, capaz de procesar solicitudes a la API. Probarás la configuración realizando llamadas seguras a la API a través de Edge Microgateway a un destino de backend. También aprenderás a agregar un complemento de protección contra picos al Microgateway.
Esta guía se divide en las siguientes partes:
- Requisito previo: Instala Edge Microgateway
- Parte 1: Configura Edge Microgateway
- Parte 2: Crea entidades en Apigee Edge
- Parte 3: Operación de Edge Microgateway
- Parte 4: Protege Edge Microgateway
- Parte 5: Agrega el complemento Spike Arrest
- Parte 6: Consulta los datos de Analytics en Apigee Edge
Prerrequisito: Instala Edge Microgateway
Sigue las instrucciones que se indican en Cómo instalar Edge Microgateway. Cuando completes la instalación, podrás seguir los pasos de este instructivo.
Cuando termines con la instalación, continúa con la siguiente sección, "Parte 1: Configura Edge Microgateway".
Parte 1: Configura Edge Microgateway
En esta parte, usarás un comando de la interfaz de línea de comandos (CLI) para configurar Edge Microgateway de modo que se comunique con Apigee Edge. Si usas Apigee Edge Cloud, sigue los pasos de configuración de Apigee Edge Cloud. Si usas Apigee Private Cloud, sigue los pasos para Apigee Edge Private Cloud.
Pasos para configurar Apigee Edge Cloud
Sigue estos pasos para usar Edge Microgateway con Apigee Edge Cloud:
- Si no lo hiciste antes, inicializa Edge Microgateway (solo debes realizar este paso una vez):
edgemicro init
- (Opcional) Imprime la ayuda para el comando edgemicro configure:
edgemicro configure -h
- Ejecuta el siguiente comando para configurar Edge Microgateway:
edgemicro configure -o [org] -e [env] -u [username]
Donde:
orges el nombre de tu organización de Edge (debes ser administrador de la organización).enves un entorno de tu organización (como test o prod).usernamees la dirección de correo electrónico asociada a tu cuenta de Apigee.
Ejemplo
edgemicro configure -o docs -e test -u jdoe@example.com
Resultado
./edgemicro configure -o docs -e test -u jdoe@apigee.com password: current nodejs version is v6.1.0 current edgemicro version is 2.2.3-beta password: file doesn't exist, setting up Give me a minute or two... this can take a while... App edgemicro-auth deployed. creating vault 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/wwitman-test-config.yaml vault info: -----BEGIN CERTIFICATE----- MIICpDCCAYwCCQCaDpaTttaDANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls b2NhbGhvc3QwHhcNMTYxAxMjA0NzIyWhcNMTYxMTAyMjA0NzIyWjAUMRIwEAYD VQQDEwlsb2NhbGhvcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDA YbtbsFe50GgBrI8QTih5yzxxxvCfdubGrLWmovwwCCFthno3u8lS54ekOL9jQu JTJsocJfNhZxvnXifDsCk5Muwx87Z/D0BYLw9ZhM8TMyA2MCkXgC6RfKT69IdJ jT3X+3D0s+apr3lACsDhgOfaeQfeHAm1SSwH/VemaJqdImGkQMtM8uscMDwG6k vBbCSNS+hh6ZH1m3tAkcKXqvj/E1hbrHNTWr+uiYFRByUzeo1I607daQD4Lxid il4Ng3hr3LC1gEzvobWgVyhQ2ovYB57T886H7dGghTnOUxLm2y/TwmQya+44SL JSsDwauArMF38cRKZZ7VAgMBAAEwDQYJKoZIhvcNAQELBQADEBAHwwu+gOn8Tq jKOYBTXtOX11HPMTxmyvZ/I57R4roE7Z/lXg/DXwbiFpFG2uamXNKq7yTDJH2i iiqdERZOGfv7TJMjRlxEnfVHoCV7UKguKq4zeeAEU2x55yFwpWNrarx0kMXRwI v3WgGfo2bimFQrCjDCNIkDKmYYt4SXIF5zUJmBWPCaK9aJoQb7ARXQO9s2zoOI XZ5bCUDbehQZ+6LyqC0hgDXiIZYy7R0j93yCbQgoHaHUMEprJEEjE24SHdsWBO nxGZxB20JLq5AHTm8lbZp7XtvbU0jVpxyrBo2/olFnmpvBVOq9eIp042IVD7nT J4rPejdK6C4= -----END CERTIFICATE----- The following credentials are required to start edge micro key: e88ec9d5da17cd88ca338d532b7c7a8c4f43ddd3da139d95955ab345af30352d secret: d7f64854eb6889d06b809dd7c161dba5eeba4a2657277fd819921bf992221a8f edgemicro configuration complete!
Pasos de configuración de Apigee Private Cloud
Sigue estos pasos para usar Edge Microgateway con Apigee Private Cloud:
- Imprime información de ayuda para el comando edgemicro private configure. De esta manera, puedes imprimir ayuda para cualquier comando o opción de comando de la CLI de Edge Microgateway.
edgemicro private configure -h
- Ejecuta el siguiente comando: Requiere información estándar sobre tu cuenta de Apigee Edge Private Cloud: nombre de la organización, nombre del entorno, nombre de usuario (dirección de correo electrónico), contraseña, IP del servidor de administración y IP del router. Debes ser administrador de la organización de Edge para usar este comando:
edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]
Donde:
orges el nombre de tu organización de Edge (debes ser administrador de la organización).enves un entorno de tu organización (como test o prod).runtime_urles la URL del entorno de ejecución de tu instancia de nube privada.mgmt_urles la URL del servidor de administración de tu instancia de nube privada.usernamees la dirección de correo electrónico asociada a tu cuenta de Apigee.-
virtual_hostes una lista separada por comas de nombres de host virtuales. Los valores predeterminados sondefault,secure.
Ejemplo
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
O bien, si tienes un alias de host virtual de myorg-test.mycompany.com, usarías un comando como este:
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
Resultado
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 vault creating vault adding private_key adding public_key configuring host http://192.168.52.106:9001 for region dc-1 saving configuration information to: /Users/ApigeeCorporation/.edgemicro/jdoe-test-config.yaml vault info: -----BEGIN CERTIFICATE----- MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o 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: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4dd09389b645147151ba3 secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac30ace944c097a726a1263 edgemicro configuration complete!
Verifique la instalación
Ejecuta este comando para verificar la instalación. Si no se informa ningún error, todo está configurado correctamente y podrás iniciar Edge Microgateway sin problemas.
edgemicro verify -o [org] -e [env] -k [key] -s [secret]
Donde:
orges el nombre de tu organización de Edge (debes ser administrador de la organización).enves un entorno de tu organización (como test o prod).keyes la clave que devolvió anteriormente el comando configure.secretes la clave que devolvió anteriormente el comando configure.
Ejemplo
edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f664ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0556d7132afbd03625bbd85dc34ebfefae4f23fbcb3c
Acerca de la configuración
Toda la configuración realizada hasta el momento permite que Edge Microgateway se inicialice en Apigee Edge. Después de que el bootstrapping se realiza correctamente, Edge Microgateway recupera una carga útil de información de configuración adicional de Apigee Edge.
¿Para qué se usa esta información de configuración? Como descubriremos en la siguiente parte de este tutorial, cuando se inicia Edge Microgateway, debe recibir una lista de proxies de API especiales adaptados a Edge Microgateway desde Apigee Edge. En la siguiente parte de este instructivo, crearás un proxy compatible con Microgateway. Edge Microgateway restringe a los clientes para que solo llamen a las APIs que se encuentran frente a estos proxies de API compatibles con Microgateway, y los clientes deberán (de forma predeterminada) presentar un token de seguridad válido para cada llamada. Para obtener más información sobre estos proxies, consulta "Lo que debes saber sobre los proxies compatibles con Edge Microgateway" en la Descripción general de Edge Microgateway.
Como administrador de la organización de Edge, te interesará saber que los proxies compatibles con Edge Microgateway se pueden agregar a los productos de Edge, al igual que cualquier otro proxy. Con el uso de productos y apps para desarrolladores, puedes generar tokens de seguridad específicos del cliente para controlar el acceso a las APIs llamadas a través de Edge Microgateway. Una vez más, los patrones involucrados son idénticos a los de trabajar con cualquier proxy de API, producto y app para desarrolladores en Apigee Edge. Si quieres leer sobre los productos, comienza con ¿Qué es un producto de API? en la documentación de Edge.
A continuación, veremos cómo crear proxies compatibles con Edge Microgateway y, luego, iniciaremos Edge Microgateway y probaremos la configuración.
Parte 2: Crea entidades en Apigee Edge
En esta parte, crearás las siguientes entidades en Edge:
- Un proxy compatible con microgateways: Es un proxy especial que Edge Microgateway puede descubrir al inicio. Los proxies compatibles con Microgateway tienen una convención de nomenclatura que debes seguir: el nombre debe comenzar con
edgemicro_. Por ejemplo,edgemicro_hellooedgemicro_userinfo. Cuando se inicia Edge Microgateway, recupera de Edge una lista de proxies compatibles con microgateway de la misma organización y el mismo entorno de Edge que especificaste cuando iniciaste Edge Microgateway.
Para cada proxy compatible con Microgateway, Edge Microgateway recupera la URL de destino del proxy y su ruta base. Los proxies compatibles con Microgateway también proporcionan una forma conveniente de asociar los datos de estadísticas que genera Edge Microgateway con un proxy en la plataforma de Edge. A medida que Microgateway controla las llamadas a la API, envía de forma asíncrona los datos de estadísticas a Edge. Los datos de Analytics aparecerán en la IU de Edge Analytics con los nombres de los proxies compatibles con microgateways, como sucede con cualquier otro proxy.
- Un producto, un desarrollador y una app para desarrolladores: Edge Microgateway usa productos, desarrolladores y apps para desarrolladores para habilitar la seguridad de los tokens de acceso de OAuth2 o las claves de API. Cuando se inicia Edge Microgateway, descarga todas las configuraciones de productos de tu organización de Apigee Edge. Utiliza esta información para verificar las llamadas a la API realizadas a través de Edge Microgateway con claves de API o tokens de acceso de OAuth 2.0.
Más información: Consulta también "Qué debes saber sobre los proxies compatibles con Edge Microgateway" en la Descripción general de Edge Microgateway.
1. Crea un proxy de API compatible con Edge Microgateway en Edge
- Accede a tu organización en Apigee Edge.
- Haz clic en CAMBIAR A CLÁSICO para ir a la IU clásica de Edge.
- En el menú superior, selecciona APIs > API Proxies.
- En la página Proxies de API, haz clic en + Proxy de API.
- En el asistente para compilar un proxy, selecciona Proxy inverso (más común).
- Haz clic en Siguiente.
- En la página de detalles del asistente, configura lo siguiente. Asegúrate de completar el asistente exactamente como se muestra:
- Nombre del proxy: edgemicro_hello
- Ruta base del proxy: /hello
- API existente: http://mocktarget.apigee.net/
- Haz clic en Siguiente.
- En la página Seguridad del asistente, selecciona Pasar a través de (ninguno).
- Haz clic en Siguiente.
- En la página Virtual Hosts del asistente, acepta los valores predeterminados.
- Haz clic en Siguiente.
- En la página Build del asistente, revisa la configuración del proxy. Asegúrate de que el entorno de prueba esté seleccionado.
- Haz clic en Build and Deploy.
2. Cómo crear un producto
Crea un producto que contenga dos proxies:
- Tu proxy compatible con microgateway: edgemicro_hello
- El proxy de autenticación que instaló Edge Microgateway: edgemicro-auth.
- En la IU de Edge (versión clásica), ve a Publicar > Productos.
- En la página Productos, haz clic en + Producto. Completa la página Detalles del producto de la siguiente manera:
- Nombre: EdgeMicroTestProduct
- Nombre visible: EdgeMicroTestProduct
- Environment: test and prod
- Access: Public
- Tipo de aprobación de clave: Automática
-
Recursos:
- Proxy de API: Selecciona edgemicro_hello.
- Revisión: 1
- Ruta de acceso del recurso: /**
- Haz clic en Import Resource.
- En Resources, haz clic en +API Proxy.
- Selecciona edgemicro-auth.
- Haz clic en Guardar.
3. (Opcional) Crea un desarrollador de prueba
Para los fines de este instructivo, puedes usar cualquier desarrollador existente para el siguiente paso, que consiste en crear una app para desarrolladores. Sin embargo, si lo deseas, crea un desarrollador de prueba ahora:
- Ve a Publicar > Desarrolladores.
- En la página Productos, haz clic en + Desarrollador.
- Completa el diálogo para crear un desarrollador de prueba.
4. Crea una app de desarrollador
Usarás las credenciales del cliente de esta app para realizar llamadas seguras a la API a través de Edge Microgateway:
- Ve a Publicar > Apps para desarrolladores.
- En la página Apps para desarrolladores, haz clic en + App para desarrolladores.
- Completa la página de Aplicación para desarrolladores de la siguiente manera:
- Nombre: EdgeMicroTestApp
- Nombre visible: EdgeMicroTestApp
- Desarrollador: Si creaste un desarrollador de prueba, selecciónalo. También puedes usar cualquier desarrollador existente para los fines de este instructivo.
-
Credenciales:
- Selecciona Vencimiento: Nunca.
- Haz clic en + Producto y selecciona EdgeMicroTestProduct (el producto que acabas de crear).
- Haz clic en Guardar.
- Volverás a la página de la lista de Apps para desarrolladores.
- Selecciona la app que acabas de crear, EdgeMicroTestApp.
- Haz clic en Mostrar junto a Clave de consumidor y Secreto de consumidor.

Parte 3: Opera Edge Microgateway
Ahora que tienes un Edge Microgateway configurado y al menos un proxy compatible con Edge Microgateway en Edge, es hora de iniciar Edge Microgateway. Se ejecutará un servidor HTTP de Edge Microgateway en tu máquina local, y realizarás llamadas a la API directamente a ese servidor.
1. Inicia Edge Microgateway
Usa el comando start de edgemicro para iniciar Edge Microgateway.
- Asegúrate de tener las claves que se devolvieron anteriormente cuando ejecutaste el comando edgemicro configure. El resultado debería ser similar a este:
You need key and secret while starting edgemicro instance key: da4778e7c240a5d4585fc559eaba5083328828ac9f3a7f583e8b73e secret: 3aad7439708b4aeb38ee08e87189921ad00e6fc1ba8a8ae9f929ee2
- (Opcional) Imprime la información de ayuda para el comando
edgemicro start.
edgemicro start -h
- Para iniciar Edge Microgateway, ejecuta el siguiente comando:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
Donde:
orges el nombre de tu organización de Edge (debes ser administrador de la organización).enves un entorno de tu organización (como test o prod).keyes la clave que devolvió anteriormente el comando configure.secretes la clave que devolvió anteriormente el comando de configuración.
Ejemplo
edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824
Resultado
El comando start recupera mucha información de configuración de Apigee Edge (que se desplaza en la ventana de la terminal). En el resultado, verás una lista de los proxies y productos compatibles con la microgateway que se detectaron. Al final del resultado, deberías ver algo como lo siguiente:
... PROCESS PID : 9757 installed plugin from analytics installed plugin from oauth eb725020-a2b0-11e6-8a52-6de156e3a6e2 edge micro listening on port 8000 installed plugin from analytics installed plugin from oauth installed plugin from analytics installed plugin from oauth installed plugin from analytics installed plugin from oauth eb77ce60-a2b0-11e6-8a88-b96278c0c198 edge micro listening on port 8000 eb78b8c0-a2b0-11e6-bf36-717b986c91fe edge micro listening on port 8000 eb77f570-a2b0-11e6-883e-472b9104351e edge micro listening on port 8000
¿Qué pasó?
Observa la terminal en la que ejecutaste el comando edgemicro config. Si te desplazas hacia arriba por la salida estándar, puedes ver que el comando recupera una carga útil de información de configuración de Edge Microgateway desde Apigee Edge. Esta información incluye lo siguiente:
- Es la clave pública que creamos y almacenamos anteriormente en la bóveda de Apigee.
- Es una representación JSON de todos los proxies compatibles con Edge Microgateway que existen en la organización o el entorno. Estos son todos los proxies que se nombran con el prefijo edgemicro_.
- Es una representación JSON de todos los productos de API que existen en la organización o el entorno.
Con esta información, Edge Microgateway sabe qué proxies y rutas de proxy puede procesar. Utiliza la información del producto para aplicar la seguridad (de la misma manera que lo hace cualquier proxy de API en Apigee Edge, donde las claves de las apps para desarrolladores tienen una asociación con los productos). En breve, explicaremos los pasos para proteger Edge Microgateway.
2. Prueba Edge Microgateway
Con Edge Microgateway en ejecución, puedes llamar al proxy. La configuración del proxy edgemicro_hello se descargó de Edge cuando iniciaste Edge Microgateway. Recuerda que la ruta base del proxy es /hello.
Para probar Edge Microgateway, comenzamos con la ruta base y agregamos una ruta de recurso /echo. Ten en cuenta que todo lo que se encuentra después de la ruta base (incluidos los parámetros de consulta) se pasa directamente al destino de backend:
curl -i http://localhost:8000/hello/echo
{"error":"missing_authorization","error_description":"Missing Authorization header"}El error se produce porque no enviaste una clave de API o un token de acceso válidos con la solicitud. De forma predeterminada, Edge Microgateway requiere una clave de API o un token de acceso en cada llamada a la API. En el siguiente paso del instructivo, protegeremos esta API de forma adecuada y te mostraremos cómo obtener un token de acceso válido y cómo incluirlo en la solicitud.
4. Detén Edge Microgateway
- En otra ventana de la terminal, ejecuta
cden el mismo directorio en el que iniciaste Edge Microgateway. - Ingresa el comando de detención:
edgemicro stop
Parte 4: Protección de Edge Microgateway
Puedes proteger las llamadas a la API realizadas a través de Edge Microgateway con una clave de API o un token de acceso.
- Protege las llamadas a la API con un token de acceso de OAuth2
- Protege las llamadas a la API con una clave de API
Protege las llamadas a la API con un token de acceso de OAuth2
Sigue estos pasos si deseas autenticar llamadas a la API con un token de acceso de OAuth2:
1. Obtén las claves necesarias
- En la IU de Edge, navega a la app para desarrolladores que creaste anteriormente, como se describe en la Parte 2: Crea entidades en Apigee Edge. El nombre de la app era EdgeMicroTestApp.
- En la página de la app para desarrolladores, muestra la clave de consumidor y el secreto de consumidor, y cópialos. Estos valores son necesarios para obtener un token de acceso en el siguiente paso.
2. Obtén un token de acceso
Hay dos formas de obtener un token de acceso. Te mostraremos ambos métodos.
Cómo usar la CLI para obtener un token de acceso
El primer método es conveniente y sigue el patrón que usamos a lo largo del instructivo. En general, el segundo método es más útil para los desarrolladores de apps cliente que necesitan solicitar tokens. El extremo de token real se implementa en el proxy edgemicro-auth que se implementó cuando configuraste Edge Microgateway.
- (Opcional) Consulta la ayuda del comando token get:
edgemicro token get -h
- Genera el token y reemplaza los valores de la clave de consumidor y el secreto de consumidor de la app para desarrolladores que creaste en Apigee Edge en los parámetros -i y -s:
edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
Donde:
orges el nombre de tu organización de Edge (debes ser administrador de la organización).enves un entorno de tu organización (como test o prod).consumer_ides el ID del consumidor en la app para desarrolladores que creaste anteriormente.consumer_secretes el secreto del consumidor en la app para desarrolladores que creaste anteriormente.
Ejemplo
edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy
Salida (muestra)
current nodejs version is v4.4.4 { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIkVkZ2VNaWNyb1Rlc 3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ. v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4 QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }
(Opcional) Cómo usar la API para obtener un token
Si sueles llamar a los proxies de Edge con curl o con otro cliente HTTP, te interesará saber que puedes llamar al extremo del token directamente, en lugar de usar el comando edgemicro token. Este es un ejemplo de curl. Solo tienes que sustituir los nombres de tu organización y entorno en la URL, y pasar los valores de clave de consumidor:secreto de consumidor separados por dos puntos en un encabezado de autenticación básica:
curl -i -X POST --user [client_id]:[client_secret] "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{"grant_type": "client_credentials"}' -H "Content-Type: application/json"
Donde:
orges el nombre de tu organización de Edge (debes ser administrador de la organización).enves un entorno de tu organización (como test o prod).client_ides el ID del consumidor en la app para desarrolladores que creaste anteriormente.client_secretes el secreto del consumidor en la app para desarrolladores que creaste anteriormente.
Salida (muestra)
El comando, ya sea que hayas usado el comando de la CLI edgemicro token o hayas llamado al extremo con curl, devuelve un token de acceso firmado que se puede usar para realizar llamadas de cliente. Algo como esto:
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o
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=
3. Verifica la configuración en Edge Microgateway
- Abre el archivo ~
/.edgemicro/org-env-config.yaml.Consulta también "¿Dónde se instala Edge Microgateway?" en Instalación de Edge Microgateway. - Asegúrate de que estas propiedades del complemento de OAuth estén configuradas como false. De forma predeterminada, son falsos, pero es una buena idea verificarlos:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- También en el archivo
org-env-config.yaml, asegúrate de que el complemento oauth se agregue al elementoplugins:sequence, de la siguiente manera:plugins: dir: ../plugins sequence: - oauth
- Si realizas algún cambio en el archivo, vuelve a cargar los cambios en la instancia en ejecución de Edge Microgateway. Este comando vuelve a configurar Edge Microgateway sin tiempo de inactividad:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Donde:
orges el nombre de tu organización de Edge (debes ser administrador de la organización).enves un entorno de tu organización (como test o prod).keyes la clave que devolvió anteriormente el comando configure.secretes la clave que devolvió anteriormente el comando de configuración.
Ejemplo
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
4. Llama a la API de forma segura
Con un token de acceso en mano, ahora puedes realizar la llamada a la API de forma segura. Por ejemplo:
curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl 9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PN30Y6uK1W1f2ONPEsBDB_BT31c6 IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx 4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0 64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo
La API devuelve encabezados y otra información del servidor simulado.
Protege la API con una clave de API
Si deseas usar una clave de API para la autorización, sigue estos pasos:
1. Obtén la clave de API
- En la IU de Edge, navega a la app para desarrolladores que creaste anteriormente, como se describe en la Parte 2: Crea entidades en Apigee Edge. El nombre de la app era EdgeMicroTestApp.
- En la página de la app para desarrolladores, muestra la clave de consumidor y cópiala. Este valor es la clave de API. Usarás esta clave para realizar llamadas a la API autenticadas.
2. Verifica la configuración en Edge Microgateway
- Abre el archivo ~
/.edgemicro/org-env-config.yaml.Consulta también "¿Dónde se instala Edge Microgateway?" en Instalación de Edge Microgateway. - Asegúrate de que estas propiedades del complemento de OAuth estén configuradas como false. De forma predeterminada, son falsos, pero es una buena idea verificarlos:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false
- También en el archivo
org-env-config.yaml, asegúrate de que el complemento oauth se agregue al elementoplugins:sequence, de la siguiente manera:plugins: dir: ../plugins sequence: - oauth - Si realizas algún cambio en el archivo, vuelve a cargar los cambios en la instancia en ejecución de Edge Microgateway. Este comando vuelve a configurar Edge Microgateway sin tiempo de inactividad:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Donde:
orges el nombre de tu organización de Edge (debes ser administrador de la organización).enves un entorno de tu organización (como test o prod).keyes la clave que devolvió anteriormente el comando configure.secretes la clave que devolvió anteriormente el comando de configuración.
Ejemplo
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
3. Llama a la API de forma segura con una clave de API
Llama a la API con el encabezado x-api-key de la siguiente manera. El valor de la clave de consumidor que copiaste de la app de desarrollador es la clave de API. De forma predeterminada, Edge Microgateway espera que pases la clave en un encabezado llamado x-api-key, de la siguiente manera:
curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"
Donde:
apikeyes el valor de la clave de consumidor que se tomó de EdgeMicroTestApp.
Por ejemplo:
curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxa0ilYQ5szwuljr5bB'
Ahora tienes un Edge Microgateway seguro y en pleno funcionamiento. En la siguiente parte del instructivo, analizaremos los complementos que agregan funcionalidad a Edge Microgateway.
Parte 5: Agrega un complemento de Spike Arrest
En esta parte, agregaremos una función de limitación de frecuencia llamada Spike Arrest a tu instancia de Edge Microgateway.
¿Qué son los complementos?
Un complemento es un módulo de Node.js que agrega funcionalidad a Edge Microgateway. Los módulos de complementos siguen un patrón coherente y se almacenan en una ubicación conocida por Edge Microgateway, lo que permite que el microgateway los descubra y cargue automáticamente. Puedes obtener más información sobre los complementos en Usa complementos.
Cómo agregar el complemento de Spike Arrest
Spike Arrest protege contra los aumentos repentinos de tráfico. Limita la cantidad de solicitudes que procesa una instancia de Edge Microgateway.
En Edge Microgateway, la protección contra picos se implementa como un módulo de complemento. Para habilitarlo, debes agregarlo al archivo de configuración de Edge Microgateway.
- Abre el archivo ~
/.edgemicro/org-env-config.yaml.Consulta también "¿Dónde se instala Edge Microgateway?" en Instalación de Edge Microgateway. - Agrega el siguiente elemento. Puedes agregarlo en cualquier parte del archivo.
spikearrest: timeUnit: minute allow: 10 buffersize: 0 - Agrega
spikearrestal elementoedgemicro:sequence, como se muestra a continuación. La propiedad de configuración de secuencia le indica a Edge Microgateway el orden en el que se ejecutan los módulos de complementos.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: - spikearrest - oauth
- Guarda el archivo de configuración.
- Vuelve a cargar Edge Microgateway con el comando reload. Debes ejecutar este comando desde el directorio en el que iniciaste Edge Microgateway.
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Donde:
orges el nombre de tu organización de Edge (debes ser administrador de la organización).enves un entorno de tu organización (como test o prod).keyes la clave que devolvió anteriormente el comando configure.secretes la clave que devolvió anteriormente el comando de configuración.
Ejemplo
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
- Intenta llamar a la API varias veces en rápida sucesión. Después de la segunda llamada, Edge Microgateway devuelve este error:
{"message":"SpikeArrest engaged","status":503}
El motivo es que la protección contra aumentos repentinos suaviza la cantidad de llamadas que se pueden realizar durante la unidad de tiempo especificada. En este caso, puedes realizar 10 llamadas en un minuto o una cada 6 segundos.
Para obtener más información, consulta "¿Cómo funciona la detención de picos?" en Usa complementos.
Crédito adicional: Agrega el complemento de cuota
Siguiendo el mismo patrón que se usó para configurar la detención de picos, puedes agregar otros complementos, como el complemento de cuotas. Al igual que con la detención de picos, el complemento de cuotas se incluye en cada instalación de Edge Microgateway. Una cuota especifica la cantidad de mensajes de solicitud que una app puede enviar a una API durante un intervalo de tiempo especificado (minutos u horas).
Para obtener información sobre cómo funcionan las cuotas, consulta "Usa el complemento de cuotas" en Usa complementos.
Parte 6: Cómo ver las estadísticas en Apigee Edge
Ahora que tenemos una instancia de Edge Microgateway que funciona por completo, veamos qué ha estado haciendo. De forma predeterminada, el módulo del complemento de Analytics se agrega a Edge Micro. Este módulo envía de forma silenciosa datos de estadísticas de Edge Micro a Apigee Edge, donde el sistema de Edge Analytics los utiliza. Veamos:
- Accede a tu organización en Apigee Edge.
- Selecciona Analytics > Proxy Performance.
- En el panel de rendimiento del proxy, selecciona el proxy edgemicro_hello.
- En el gráfico, se muestra información sobre los patrones de tráfico del proxy, como el tráfico total, el tiempo de respuesta promedio, el tiempo de respuesta promedio del destino y mucho más.
Puedes obtener más información sobre los paneles de estadísticas de Edge en la página principal de los paneles de estadísticas en la documentación de Edge. Para obtener más información sobre los complementos, consulta Cómo usar complementos