Configura Edge Microgateway

Estás viendo la documentación de Apigee Edge.
Ve a la Documentación de Apigee X.
información

Edge Microgateway v. 3.3.x

Descripción general

Cuando completes los pasos de esta guía de configuración, tendrás un dispositivo Edge completamente configurado La instalación de Microgateway capaz de procesar solicitudes a la API Probarás la configuración llamadas a la API seguras mediante Edge Microgateway a un destino de backend. También aprenderás a agregar una de protección contra aumentos repentinos de tráfico a Microgateway.

Esta guía se divide en estas partes:

Requisito: Instala Edge Microgateway

Sigue las instrucciones que se indican en Instala Edge Microgateway Cuando completes la instalación, estarás listo para seguir los pasos que se indican .

Parte 1: Configura Edge Micropuerta de enlace

En esta parte, usarás un comando de la interfaz de línea de comandos (CLI) para configurar Edge Microgateway para comunicarse con Apigee Edge.

Pasos de configuración de Apigee Edge Cloud

Sigue estos pasos para usar Edge Microgateway con Apigee Edge Cloud:

  1. Inicializa Edge Microgateway (solo necesitas realizar este paso una vez):
    edgemicro init
    
  2. Se colocó un archivo de configuración llamado default.yaml en tu casa en un subdirectorio llamado .edgemicro. Verifica ahora para asegurarte de que este archivo existe:
    ls ~/.edgemicro
    default.yaml
    

    Nota: En los documentos de Edge Microgateway, nos referimos al directorio principal con la virgulilla (~), que es un atajo de UNIX. Si usas Windows, y ejecutas una shell que no admite la virgulilla, deberás sustituir el nombre de variable de entorno para la virgulilla en los comandos que hacen referencia al directorio principal. Para ejemplo: %USERPROFILE%/.edgemicro.

  3. Todos los comandos de la CLI tienen una función de ayuda. Imprimir ayuda para edgemicro configure:
    edgemicro configure -h
    
  4. Ejecuta el siguiente comando para configurar Edge Microgateway:
    edgemicro configure -o [org] -e [env] -u [username] 
    

    Aquí:

    • org: El nombre de la organización de Edge (debes ser una organización) administrador).
    • env: Un entorno en tu organización (como un entorno de pruebas o prod).
    • username: La dirección de correo electrónico asociada a tu Cuenta de Apigee.

      Nota: El comando configure permite parámetros adicionales. Para obtener una consulta Configura Edge Microgateway para Apigee Edge Cloud.

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 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
    

Pasos de configuración de Apigee Private Cloud

Sigue estos pasos para usar Edge Microgateway con la nube privada de Apigee:

  1. Inicializa Edge Microgateway (solo necesitas realizar este paso una vez):
    edgemicro init
    
  2. Imprime la información de ayuda para el comando edgemicro private configure. Tú puede imprimir la ayuda de esta manera para cualquier comando o opción de comando de la CLI de Edge Microgateway.
    edgemicro private configure -h
    
  3. Ejecuta el siguiente comando: Requiere información estándar sobre Apigee Edge Cuenta de nube privada: nombre de la organización, nombre del entorno, nombre de usuario (dirección de correo electrónico), contraseña, del servidor de administración de Google y la IP del router. Debes ser administrador de una organización de Edge para usar esta función :
    edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]
    

    Aquí:

    • org es el nombre de tu organización de Edge (debes ser una organización). administrador).
    • env es un entorno de tu organización (como un entorno de pruebas o prod).
    • runtime_url es la URL del entorno de ejecución de tu nube privada. instancia.
    • mgmt_url es la URL del servidor de administración de la instancia de nube privada.
    • username es la dirección de correo electrónico asociada con tu cuenta de Apigee de servicio predeterminada.
    • virtual_host es una lista separada por comas de hosts virtuales. y nombres de usuario. Los valores predeterminados son default,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, si tienes un alias de host virtual de myorg-test.mycompany.com, debes usar un comando de la siguiente manera:

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 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!
    

Verifique la instalación

Ejecuta este comando para verificar la instalación. Si no se informan errores, significa que todo está configurado. de forma correcta y podrás iniciar Edge Microgateway correctamente.

edgemicro verify -o [org] -e [env] -k [key] -s [secret]

Aquí:

  • org es el nombre de tu organización de Edge (debes ser una organización). administrador).
  • env es un entorno de tu organización (como un entorno de pruebas o prod).
  • key es la clave que el equipo de configuración mostró previamente. kubectl.
  • secret es la clave que el equipo de configuración mostró previamente. kubectl.

Ejemplo

edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f624ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0156d7132afbd03625bbd85dc34ebfefae4f23fbcb3c

Acerca de la configuración

Toda la configuración realizada hasta ahora permite que Edge Microgateway se inicie por sí mismo en Apigee Edge. Después de que el inicio se realiza correctamente, Edge Microgateway recupera una carga útil de de configuración de seguridad de Apigee Edge.

¿Para qué se usa esta información de configuración? Como descubriremos en la siguiente parte cuando se inicia Edge Microgateway, necesita recibir una lista de instancias Proxies de API con reconocimiento de micropuertas de enlace de Apigee Edge. En la siguiente parte de este instructivo, crear un proxy compatible con Microgateway. Edge Microgateway restringe los clientes para que solo llamen a las APIs frente a estos proxies de API con reconocimiento de Microgateway, y se exigirá a los clientes (de forma predeterminada) que presentar un token de seguridad válido para cada llamada. Para obtener más información sobre estos proxies, consulta "Qué debes conocer los proxies de Edge Microgateway-aware”. en la sección Descripción general de Edge Microgateway

Como administrador de la organización de Edge, le interesará saber que los proxies que se pueden usar que se agregan a los productos de Edge, como a cualquier otro proxy. A través del uso de productos y desarrolladores puedes generar tokens de seguridad específicos del cliente para controlar el acceso a las APIs a las que Edge Microgateway. Nuevamente, los patrones involucrados son idénticos a trabajar con cualquier proxy de API, productos y apps de desarrolladores en Apigee Edge. Si quieres obtener más información sobre los productos, comienza con ¿Qué es un producto de API? en Edge en la documentación de Google Cloud.

A continuación, veremos cómo crear proxies con reconocimiento de Edge Microgateway y, luego, iniciar Edge Microgateway y probar la configuración

Parte 2: Crea entidades en Apigee Edge

En esta parte, crearás estas entidades en Edge:

  • Un microgateway-aware proxy: Es un proxy especial que Edge Microgateway puede descubrir en inicio. Los proxies que reconocen micropuertas de enlace tienen una convención de nombres que debes seguir: el nombre debe comenzar con edgemicro_. Por ejemplo: edgemicro_hello o edgemicro_userinfo Cuando se inicia Edge Microgateway, este se recupera En Edge, una lista de proxies que reconocen las micropuertas de enlace de la misma organización y entorno de Edge que especificaste cuando iniciaste Edge Microgateway.

    Para cada proxy que reconoce la micropuerta de enlace, Edge Microgatway recupera la URL de destino del proxy y su ruta base. Los proxies que reconocen micropuertas de enlace también proporcionan una forma conveniente de asociar los análisis que genera Edge Microgateway con un proxy en la plataforma Edge. Como la Microgateway administra llamadas a la API, envía de forma asíncrona datos de estadísticas a Edge. Aparecerán datos de estadísticas en la IU de Edge Analytics bajo los nombres de proxy con reconocimiento de micropuertas de enlace, como sucede con cualquier otro proxy.
  • Una app de producto, desarrollador y desarrollador: Edge Microgateway usa productos. desarrolladores y apps de desarrolladores para habilitar la seguridad de la clave de API o el token de acceso de OAuth2. Cuando Edge Se inicia Microgateway y se descargan todos los parámetros de configuración del producto desde Apigee organización. Usa 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 OAuth2.

1. Crea un proxy de la API con reconocimiento de Edge Microgateway en Edge

  1. Accede a tu organización en Apigee Edge.
  2. Selecciona Desarrollo > Proxies de API en el menú de navegación lateral
  3. Haz clic en + Proxy. Se invoca el asistente para compilar un proxy.
  4. En la primera página del asistente, selecciona Proxy inverso (más común).
  5. Haz clic en Siguiente.
  6. En la página Detalles del asistente, configúralo de la siguiente manera. Asegúrate de completar las instrucciones del asistente exactamente como se muestra a continuación:
    • Nombre del proxy: edgemicro_hello
    • Ruta base del proxy: /hello
    • API existente: http://mocktarget.apigee.net/
  7. Haz clic en Siguiente.
  8. En la página Seguridad del asistente, selecciona Pasar (ninguno).
  9. Haz clic en Siguiente.
  10. En la página Virtual Hosts del asistente, acepta los valores predeterminados.
  11. Haz clic en Siguiente.
  12. En la página de compilación del asistente, revisa la configuración de proxy. Asegúrate de que test.
  13. Haz clic en Build and Deploy.

2. Crear un producto de API

  1. Selecciona Publicar > Productos de API en el menú de navegación lateral.
  2. Haz clic en + Producto de API.
  3. Ingresa los detalles del producto que se muestran en la siguiente tabla:
    Campo Descripción
    Nombre EdgeMicroTestProduct
    Nombre visible Producto de prueba de Edge Microgatway
    Entorno prueba
    Acceso Público
    Tipo de aprobación de claves Automática
  4. En la sección de recursos de la API, agrega el proxy de API que acabas de crear y el proxy edgemicro-auth:
    • edgemicro_hello
    • edgemicro-auth
  5. Haz clic en Guardar.

3. Crea un desarrollador

A los fines de este instructivo, puedes usar cualquier desarrollador existente para el siguiente paso, crear una app de desarrollador. Pero, si lo deseas, puedes crear un desarrollador de prueba ahora:

  1. Selecciona Publicar > Desarrolladores en el menú de navegación lateral.
  2. Haz clic en + Desarrollador.
  3. 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:

  1. Selecciona Publicar > Apps en el menú de navegación lateral.
  2. Haga clic en + App. Aparecerá la página de detalles de la app de desarrollador.
  3. Completa la página de la app de desarrollador de la siguiente manera:
    1. Nombre: EdgeMicroTestApp
    2. Nombre visible: EdgeMicroTestApp
    3. Desarrollador: Si creaste un desarrollador de prueba, selecciónalo. También puedes usar para los fines de este instructivo.
    4. Credenciales:
      1. Selecciona Vencimiento: Nunca.
      2. Haz clic en + Producto y selecciona EdgeMicroTestProduct. (el producto que acabas de crear)
  4. Haz clic en Guardar.
  5. Regresaste a la página Lista de apps.
  6. Selecciona la app que acabas de crear, EdgeMicroTestApp.
  7. Haz clic en Mostrar junto a Clave de consumidor y Consumidor Secreto.

Parte 3: Usa Edge Microgateway

Ahora que ya configuraste una Edge Microgateway y al menos una cuenta con reconocimiento de Edge Microgateway en Edge, deberás iniciar Edge Microgateway. Se ejecutará un servidor HTTP de Edge Microgateway en tu máquina local y harás llamadas a la API directamente en ese servidor.

1. Inicia Edge Microgateway

Usa el comando edgemicro start para iniciar Edge Microgateway

  1. Asegúrate de tener las claves que se mostraron anteriormente cuando ejecutaste el comando edgemicro configure. El resultado debería ser similar al siguiente:
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828bc9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e82189921ad00e6fc1ba8a8ae9f929ee2
    
  2. (Opcional) Imprime información de ayuda para el comando edgemicro start.
    edgemicro start -h
    
  3. Para iniciar Edge Microgateway, ejecuta el siguiente comando:
    edgemicro start -o [org] -e [env] -k [key] -s [secret]
    

    Aquí:

    • org es el nombre de tu organización de Edge (debes ser una organización). administrador).
    • env es un entorno de tu organización (como un entorno de pruebas o prod).
    • key es la clave que el equipo de configuración mostró previamente. kubectl.
    • secret es la clave que el equipo de configuración mostró previamente. kubectl.

    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 a la ventana de terminal). En el resultado, verás una lista de microgateway-aware y los productos que se descubrieron. Al final del resultado, deberías ver algo así:

    ...
    
    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
    
  4. Verifica el estado de la micropuerta de enlace. En otra ventana de terminal, cd al mismo directorio donde iniciaste Edge Micro y, luego, ingresa este comando:
    edgemicro status
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    edgemicro is running with 8 workers
    

¿Qué pasó?

Una carga útil de Edge La información de configuración de Microgateway se descarga de Apigee Edge y se almacena en caché de forma local. Esta información incluye lo siguiente:

  • La clave pública que creamos y almacenamos antes en un mapa de par clave-valor (KVM) encriptado.
  • Una representación de todos los proxies de Edge Microgateway que existen en el organización y entorno. Estos son todos los proxies que tienen el prefijo edgemicro_
  • Una representación de todos los productos de API que existen en el organización y entorno.

Con esta información, Edge Microgateway sabe qué proxies y rutas de acceso del proxy tiene permitido el proceso de administración de recursos. Usa la información del producto para aplicar la seguridad (exactamente de la misma manera que cualquier API proxy en Apigee Edge, donde las claves de apps de desarrolladores tienen una asociación con productos). Iremos en breve los pasos para proteger Edge Microgateway.

2. Prueba Edge Microgateway

Con Edge Microgateway en ejecución, puedes llamar al proxy. La configuración del El 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 de acceso base y agregamos una ruta de acceso del recurso /echo. Ten en cuenta que todo lo que está después de la ruta base (incluidos los parámetros de consulta) solo se pasa a través del destino del 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 de forma predeterminada, Edge Microgateway requiere una clave de API o un token de acceso en cada llamada a la API. En en el siguiente paso del tutorial, protegeremos esta API de forma adecuada y te mostraremos cómo obtener una el token de acceso e incluirlo en la solicitud.

4. Detener Edge Microgateway

  1. En una ventana de terminal independiente, cd al mismo directorio, en el que iniciaste Edge Microgateway.
  2. Ingresa el comando de detención:
    edgemicro stop
    

Parte 4: Extremo seguro Micropuerta de enlace

Puedes proteger las llamadas a la API que se realicen a través de Edge Microgateway con una clave de API o un acceso token.

Protege las llamadas a la API con un token de acceso de OAuth2

Sigue estos pasos si deseas autenticar las llamadas a la API con un token de acceso de OAuth2:

1. Obtén las claves necesarias

  1. En la IU de Edge, navega a la app para desarrolladores que creaste anteriormente. El nombre de la app fue EdgeMicroTestApp.
  2. En la página de la app de desarrollador, 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

Existen dos maneras de obtener un token de acceso. Te mostraremos ambos métodos.

Usa la CLI para obtener un token de acceso

El primer método es conveniente y sigue el patrón que usamos en todo momento. el instructivo. El segundo método suele ser más útil para la app cliente desarrolladores que necesitan solicitar tokens. El extremo real del token se implementa en el proxy edgemicro-auth que se implementó cuando configuraste Edge Microgateway

  1. Opcional: Consulta la ayuda del comando token get:
    edgemicro token get -h
    
  2. Genera el token reemplazando los valores de tu clave de consumidor y secreto de consumidor del para desarrolladores que creaste en Apigee Edge en las interfaces -i y -s parámetros:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]
    

    Aquí:

    • org es el nombre de tu organización de Edge (debes ser una organización). administrador).
    • env es un entorno de tu organización (como un entorno de pruebas o prod).
    • consumer_id es el ID de consumidor de la app de desarrollador que creados previamente.
    • consumer_secret es el secreto de consumidor del objeto Developer. App que creaste anteriormente.

    Ejemplo

    edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy
    

    Resultado (muestra)

    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' }
    

(Opcional) Usa la API para obtener un token

Si sueles llamar a los proxies de Edge usando curl o algún otro cliente HTTP, te interesará saber que puedes llamar al extremo del token directamente, en lugar de usar el comando edgemicro token. Aquí hay un ejemplo de curl. Solo debes sustituir los nombres de tu organización y entorno en la URL y pasa los valores de Consumer Key:Consumer Secret separados por dos puntos en un Encabezado de autenticación:

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"

Aquí:

  • org es el nombre de tu organización de Edge (debes ser una organización). administrador).
  • env es un entorno de tu organización (como un entorno de pruebas o prod).
  • client_id es el ID de consumidor de la app de desarrollador que creaste. anteriormente.
  • client_secret es el secreto del consumidor en la app de desarrollador creados previamente.

Resultado (Muestra)

El comando, ya sea que hayas usado el comando de CLI edgemicro token o llamó a con curl, devuelve un token de acceso firmado que puede usarse para hacer llamadas a los clientes. Algo como esto:

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. Verifica la configuración en Edge Microgateway

  1. Abre el archivo $HOME/.edgemicro/org-env-config.yaml. Consulta ¿Dónde está instalado Edge Microgateway si no puedes encontrar este archivo.
  2. Asegúrate de que estas propiedades del complemento de OAuth estén configuradas como false. Son falsas de forma predeterminada, pero es una buena idea verificar lo siguiente:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
    
  3. Además, en el archivo org-env-config.yaml, asegúrate de que el complemento de OAuth esté Se agregó al elemento plugins:sequence de la siguiente manera:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
    
  4. Si realizas algún cambio en el archivo, vuelve a cargarlo a la instancia Instancia de Edge Microgateway. Este comando vuelve a configurar Edge Microgateway sin tiempo de inactividad:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Aquí:

    • org es el nombre de tu organización de Edge (debes ser una organización). administrador).
    • env es un entorno de tu organización (como un entorno de pruebas o prod).
    • key es la clave que el equipo de configuración mostró previamente. kubectl.
    • secret es la clave que el equipo de configuración mostró previamente. kubectl.

    Ejemplo

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
    

4. Llama a la API de forma segura

Con un token de acceso a mano, ahora puedes realizar la llamada a la API de forma segura. Por ejemplo:

  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

La API muestra encabezados y otra información del servidor simulado.

Cómo proteger 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

  1. En la IU de Edge, navega a la app para desarrolladores que creaste anteriormente. El nombre de la app fue EdgeMicroTestApp.
  2. En la página de la app de desarrollador, muestra la clave de consumidor y cópiala. Este valor es el valor de . Usarás esta clave para realizar llamadas autenticadas a la API.

2. Verifica la configuración en Edge Microgateway

  1. Abre el archivo $HOME/.edgemicro/org-env-config.yaml. Consulta Dónde si no encuentras el archivo, está instalado Edge Microgateway.
  2. Asegúrate de que estas propiedades del complemento de OAuth estén configuradas como false. Son falsas de forma predeterminada, pero puedes volver a verificarlo si lo deseas:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
    
  3. Además, en el archivo org-env-config.yaml, asegúrate de que el complemento de OAuth esté Se agregó al elemento plugins:sequence de la siguiente manera:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
    
  4. Si realizas algún cambio en el archivo, vuelve a cargarlo a la instancia Instancia de Edge Microgateway. Este comando vuelve a configurar Edge Microgateway sin tiempo de inactividad:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Aquí:

    • org es el nombre de tu organización de Edge (debes ser una organización). administrador).
    • env es un entorno de tu organización (como un entorno de pruebas o prod).
    • key es la clave que el equipo de configuración mostró previamente. kubectl.
    • secret es la clave que el equipo de configuración mostró previamente. kubectl.

    Ejemplo

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c30177d64a88754d615c74e1f78b6181d
    

3. Llama a la API de forma segura con una clave de API

Llama a la API con el encabezado x-api-key como se indica a continuación. El valor de la clave de consumidor copiada de la app de desarrollador es la clave de API. Según la configuración predeterminada, Edge Microgateway espera que apruebes la clave en un encabezado llamado x-api-key, como el siguiente:

curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"

Aquí:

  • apikey es el valor de la clave de consumidor tomado del EdgeMicroTestApp.

Por ejemplo:

curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxd0ilYQ5szwuljr5bB'

Ahora tienes una Edge Microgateway completamente funcional y segura. En la siguiente parte del veremos los complementos que agregan funcionalidad a Edge Microgateway.

Parte 5: Cómo agregar un dispositivo de protección contra aumentos repentinos complemento

En esta parte, agregaremos una función de límite de frecuencia llamada protección contra aumentos repentinos 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. Módulos de complementos siguen un patrón coherente y se almacenan en una ubicación conocida por Edge Microgateway, lo que permite microgateway para descubrirlos y cargarlos automáticamente. Para obtener más información sobre los complementos, consulta el Usa complementos.

Cómo agregar un complemento de protección contra aumentos de tráfico

Un aumento repentino el complemento arrest brinda protección contra los aumentos repentinos de tráfico. Limita la cantidad de solicitudes procesadas por una instancia de Edge Microgateway.

En Edge Microgateway, la protección contra los aumentos de tráfico se implementa como un módulo de complemento. Para habilitarla, necesitas para agregarla al archivo de configuración de Edge Microgateway.

  1. Abre el archivo. $HOME/.edgemicro/org-env-config.yaml.Dónde si no encuentras el archivo, está instalado Edge Microgateway.
  2. Agrega el siguiente elemento. Puedes agregarla en cualquier parte del archivo.
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
    
  3. Agrega spikearrest al elemento edgemicro:sequence, como se muestra a continuación a continuación. La propiedad de configuración de secuencia le indica a Edge Microgateway el orden en que de complementos del proveedor.
    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
    
  4. Guarda el archivo de configuración.
  5. Vuelve a cargar Edge Microgateway con el comando reload. Debe ejecutar este comando desde el directorio en el que iniciaste Edge Microgateway.
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]
    

    Aquí:

    • org es el nombre de tu organización de Edge (debes ser un administrador de la organización).
    • env es un entorno de tu organización (como un entorno de pruebas o prod).
    • key es la clave que el equipo de configuración mostró previamente. kubectl.
    • secret es la clave que mostró previamente el configure.

    Ejemplo

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
    
  6. Intenta llamar a la API varias veces seguidas rápidamente. Después de la segunda llamada, Edge Microgateway muestra este error:
    {"message":"SpikeArrest engaged","status":503}
    

La razón es que la detención del tráfico suaviza la cantidad de llamadas que se pueden realizar a través del unidad de tiempo especificada. Así que, en este caso, puede hacer 10 llamadas en un minuto o una cada 6 segundos.

Crédito extra: Agregar el complemento de cuota

Siguiendo el mismo patrón que se utiliza para configurar la protección contra los aumentos de tráfico, puedes agregar otros complementos, como el complemento de cuota. Al igual que con la protección contra aumentos de tráfico, el complemento de cuota se incluye en cada instalación de Edge Microgateway. R cuota especifica la cantidad de mensajes de solicitud que una app puede enviar a una API a través de una un intervalo de tiempo especificado (horas o minutos).

Parte 6: Visualización estadísticas en Apigee Edge

Ahora tenemos una instancia de Edge Microgateway completamente funcional. Veamos qué sucedió. De forma predeterminada, el módulo del complemento de estadísticas se agrega a Edge Micro. Este módulo envía de forma silenciosa de estadísticas de Edge Micro a Apigee Edge, donde los consume el sistema de Edge Analytics. Veamos:

  1. Accede a tu organización en Apigee Edge.
  2. Selecciona Analytics > Rendimiento del proxy.
  3. En el panel de rendimiento del proxy, selecciona edgemicro_hello proxy.
  4. El gráfico muestra información sobre los patrones de tráfico del proxy, como el tráfico total, tiempo de respuesta promedio, tiempo de respuesta promedio objetivo y mucho más.

Puedes leer más sobre los paneles de Edge Analytics en la página principal de los paneles de Analytics en el Documentación de Edge Para obtener más información sobre los complementos, consulta el artículo Cómo usar complementos.