Estás viendo la documentación de Apigee Edge.
Ve a la
documentación de Apigee X. info
Versión 3.3.x
Corrección de errores y mejoras v.3.3.x
3.3.5
El viernes 20 de diciembre de 2024, lanzamos las siguientes correcciones y mejoras en la micropuerta de enlace de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.3.5. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.3.5 | 3.3.5 | 3.3.5 | 3.3.5 | 3.2.2 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
383024578 | Función |
Agregamos compatibilidad con la versión 22 de Node.js y quitamos la compatibilidad con la versión 16. Si estás en Node.js v18, Edge Microgateway imprime el siguiente mensaje de error durante el inicio: current nodejs version is 18.x.x Note, v18.x.x will be out of support soon, see https://docs.apigee.com/release/notes/edge-microgateway-release-notes-0 Si ejecutas una versión anterior de Node.js, verás este mensaje de error: You are using a version of NodeJS that is not supported |
Se solucionaron problemas de seguridad
- CVE-2024-21538
- CVE-2024-45590
- CVE-2019-3844
- CVE-2019-12290
- CVE-2020-1751
- CVE-2018-12886
- CVE-2023-50387
- CVE-2019-3843
- CVE-2022-4415
- CVE-2021-3997
Corrección de errores y mejoras v.3.3.x
3.3.4
El 18 de septiembre de 2024, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.3.4. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.3.4 | 3.3.4 | 3.3.4 | 3.3.4 | 3.2.2 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
675987751 | Error |
Se solucionó un problema por el que la Microgateway de Edge no registraba las direcciones IP del cliente. |
Se solucionaron problemas de seguridad
- CVE-2021-23337
- CVE-2024-4068
- CVE-2020-28469
- CVE-2020-28503
3.3.3
El 25 de abril de 2024, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.3.3. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.3.3 | 3.3.3 | 3.3.3 | 3.3.3 | 3.2.2 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
315939218 | Quitada |
Se quitó el complemento de cliente Eureka de la micropuerta de enlace de Edge. La eliminación de esta función no afecta la funcionalidad principal de la Microgateway de Edge ni la reescritura de las URLs de destino. Para obtener más información, consulta Reescritura de URLs de destino en complementos. |
283947053 | Quitada |
Se quitó la compatibilidad con |
Se solucionaron problemas de seguridad
- CVE-2023-0842
- CVE-2023-26115
- CVE-2022-25883
- CVE-2017-20162
- CVE-2022-31129
- CVE-2022-23539
- CVE-2022-23541
- CVE-2022-23540
- CVE-2024-21484
- CVE-2022-46175
- CVE-2023-45133
- CVE-2020-15366
- CVE-2023-26136
- CVE-2023-26115
3.3.2
El 18 de agosto de 2023, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.3.2. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.3.2 | 3.3.2 | 3.3.2 | 3.3.2 | 3.2.2 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
296187679 | Función |
Las versiones de Node.js compatibles incluyen 16, 18 y 20. A partir de la versión 3.3.2, los comandos de la CLI de Edge Microgateway solo funcionarán en las versiones compatibles. Ejecutar comandos de la CLI en versiones no compatibles generará un error. Consulta también Software y versiones compatibles con Apigee. |
283947053 | Error |
Se solucionó un problema en el que la Microgateway de Edge mostraba el primer producto de API en la lista de productos de API asociados con una app. Ahora determinamos el producto de API correcto que se mostrará según la solicitud. |
274443329 | Error |
Se corrigió un problema por el que Docker extraía una versión de imagen desactualizada.
La versión del nodo de Docker se actualizó a la versión 18 de Node.js. Ahora compilamos la imagen de Docker con la versión |
Se solucionaron problemas de seguridad
Ninguno
3.3.1
El 7 de junio de 2022, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.3.1. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.3.1 | 3.3.1 | 3.3.1 | 3.3.1 | 3.2.2 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
220885293 | Función |
Ahora se admite la versión 16 de Node.js. |
231972608 | Error |
Se corrigió un problema en el que el comando |
233315475 | Error |
Se corrigió un problema por el que el complemento |
221432797 | Cambiar |
La versión de Docker Node.js de la imagen base de la micropuerta de enlace de Edge se actualizó a Node.js 14. |
215748732 | Función |
Se agregó compatibilidad con la autenticación de tokens de SAML al comando revokekeys.
Ahora puedes pasar un token SAML en lugar de credenciales de nombre de usuario y contraseña con la opción Para obtener más información, consulta la referencia de la línea de comandos. |
218723889 | Actualización de documentos |
Se actualizó la documentación para incluir un vínculo a los complementos compatibles de Edge Microgateway almacenados en GitHub. Consulta Complementos existentes empaquetados con Edge Microgateway. |
Se solucionaron problemas de seguridad
ID del problema | Descripción |
---|---|
CVE-2021-23413 | Esto afecta al paquete jszip anterior a la versión 3.7.0. Si creas un nuevo archivo ZIP con nombres de archivo configurados en valores de prototipo de objetos (p. ej., proto, toString, etc.), se muestra un objeto con una instancia de prototipo modificada. |
3.3.0
El 4 de febrero de 2022, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.3.0. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.3.0 | 3.3.0 | 3.3.0 | 3.3.0 | 3.2.2 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
219556824 | Problema conocido | La puerta de enlace de Microgateway de Edge 3.3.0 no es compatible con el comando npm audit fix.
Ejecutar
Si ejecutas
Para corregir el problema, ejecuta el siguiente comando para restablecer la versión correcta de npm install apigeetool@0.15.1 Este problema se abordará en una versión futura de la Microgateway de Edge. |
138622990 | Función |
Una nueva marca para el complemento Quota, |
192534424 | Error |
Se corrigió un problema por el que el código de respuesta que se veía en las estadísticas de Apigee no coincidía con el código de respuesta de la Microgateway de Edge. |
198986036 | Mejora | La micropuerta de enlace de Edge ahora recupera la clave pública de un proveedor de identidad (IDP) en cada intervalo de sondeo y también actualiza la clave en caso de que cambie la clave pública del IDP.
Anteriormente, el complemento extauth no podía actualizar la clave pública sin volver a cargar la Microgateway de Edge si cambiaba la clave pública de un IDP.
|
168713541 | Error |
Se mejoró la documentación para explicar cómo configurar TLS/SSL para varios destinos. Consulta Cómo usar las opciones de SSL/TLS del cliente. |
171538483 | Error |
Se modificó la documentación para corregir la convención de nombres de los archivos de registro. Consulta Convenciones de nombres de archivos de registro. |
157908466 | Error |
Se modificó la documentación para explicar correctamente cómo instalar una versión específica de Edge Microgateway. Consulta Cómo actualizar Edge Microgateway si tienes una conexión a Internet. |
215748427 | Error | Se solucionó un problema por el que el comando revokekeys mostraba un error cuando se revocaba una clave con un par de claves y secretos existentes. |
205524197 | Error | Se actualizó la documentación para incluir la lista completa de niveles de registro. Consulta los atributos de edgemicro y Cómo configurar el nivel de registro. |
Versión 3.2.x
Corrección de errores y mejoras v.3.2.x
3.2.3
El 17 de septiembre de 2021, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.2.3. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.2.3 | 3.2.3 | 3.2.3 | 3.2.3 | 3.2.2 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
192416584 | Función |
El atributo de configuración |
192799989 | Función |
El atributo de configuración |
148062415 | Error | Se corrigió un problema por el que, en un contexto de contenedor de Docker, la Microgateway de Edge no se cerraba de forma correcta con el comando docker stop {containerId} . Se finalizó el proceso, pero no se quitaron los archivos .sock y .pid . Ahora, los archivos se quitaron y reiniciar el mismo contenedor funciona como se esperaba.
|
190715670 | Error | Se corrigió un problema por el que algunas solicitudes se bloqueaban durante la actividad de recarga interna de la micropuerta de enlace. Este problema era intermitente y se producía en situaciones de mucho tráfico.
El problema se observó cuando se usaron las funciones tokenCache y cacheKey del complemento OAuth.
|
183910111 | Error | Se corrigió un problema por el que una URL de ruta de acceso de recursos con una barra final se interpretaba incorrectamente como una ruta de acceso de recursos independiente. Ahora, por ejemplo, las rutas /country/all y /country/all/ se interpretan como la misma ruta. |
Se solucionaron problemas de seguridad
ID del problema | Descripción |
---|---|
CVE-2020-28503 | Las propiedades de copia del paquete anteriores a la versión 2.0.5 son vulnerables a la contaminación de prototipos a través de la funcionalidad principal. |
CVE-2021-23343 | Todas las versiones de package path-parse son vulnerables a la denegación de servicio de expresión regular (ReDoS) a través de las expresiones regulares splitDeviceRe, splitTailRe y splitPathRe. ReDoS presenta una complejidad temporal de peor caso polinómica. |
3.2.2
El jueves 15 de julio de 2021, lanzamos las siguientes correcciones y mejoras en la micropuerta de enlace de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.2.2. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.2.2 | 3.2.2 | 3.2.2 | 3.2.2 | 3.2.2 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
185323500 | Cambiar |
El valor de
Las APIs de solicitud de token y solicitud de actualización de token ahora muestran
Para cumplir con la
RFC 6749, el marco de trabajo de autorización de OAuth 2.0,
el valor esperado para el parámetro de configuración |
188492065 | Cambiar |
Fin de la compatibilidad con Node.js 8
A partir de la versión 3.2.2, ya no se admitirá Node.js 8. Para obtener más información, consulta Software y versiones compatibles: Edge Microgateway. |
183990345 | Función |
Cómo configurar el resultado del registro para el contenedor de Docker
El parámetro de configuración de la Microgateway de Edge
to_console
te permite elegir enviar información de registro a la salida estándar en lugar de a un archivo de registro. Si sigues los pasos para ejecutar Edge Microgateway en un contenedor de Docker, el contenedor redirecciona de forma predeterminada la salida estándar y de errores a un archivo ubicado en el contenedor en la ubicación:
Para evitar que la información de registro se envíe a Para obtener detalles sobre cómo usar esta nueva variable, consulta Cómo usar Docker para Edge Microgateway. |
183057665 | Función |
Se pueden configurar las rutas de acceso de los archivos edgemicro.pid y edgemicro.sock .
Un nuevo parámetro |
191352643 | Función | Se actualizó la imagen de Docker para Edge Microgateway para usar la versión 12.22 de Node.js. Consulta Cómo usar Docker para Edge Microgateway. |
Se solucionaron problemas de seguridad
ID del problema | Descripción |
---|---|
CVE-2021-28860 | En mixme de Node.js, antes de la versión 0.5.1, un atacante puede agregar o alterar las propiedades de un objeto a través de "__proto__" mediante las funciones mutate() y merge(). El atributo contaminado se asignará directamente a todos los objetos del programa. Esto pondrá en riesgo la disponibilidad del programa y podría provocar una posible denegación del servicio (DoS). |
CVE-2021-30246 | En el paquete jsrsasign hasta la versión 10.1.13 para Node.js, algunas firmas RSA PKCS#1 v1.5 no válidas se reconocen por error como válidas. NOTA: No hay un ataque práctico conocido. |
CVE-2021-23358 | El paquete underscore de 1.13.0-0 y anteriores a 1.13.0-2, de 1.3.2 y anteriores a 1.12.1 son vulnerables a la inyección de código arbitraria a través de la función de plantilla, en particular, cuando se pasa una propiedad de variable como argumento, ya que no se limpia. |
CVE-2021-29469 | Node-redis es un cliente de Redis de Node.js. Antes de la versión 3.1.1, cuando un cliente está en el modo de supervisión, la regex que se usa para detectar mensajes de supervisión podría causar un retroceso exponencial en algunas cadenas. Este problema podría provocar una denegación del servicio. El problema se corrigió en la versión 3.1.1. |
CVE-2020-8174 | La imagen de Docker se actualizó para usar la versión 12.22 de Node.js. |
3.2.1
El viernes 5 de marzo de 2021, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.2.1. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.2.1 | 3.2.1 | 3.2.1 | 3.2.1 | 3.2.1 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
180362102 | Error |
Se solucionó un problema en el que las claves JWK con un valor nulo causaban que las aplicaciones fallaran.
Ahora se controla la condición nula para evitar pasar un valor nulo en Nota: Esta solución requiere que actualices el proxy edgemicro-auth. |
179971737 | Error |
Se solucionó un problema por el que las respuestas de estado 4XX o 5XX de destino se registraban como errores de proxy para los proxies edgemicro_*.
En el caso de las transacciones de Edge Microgateway, se mostraban recuentos de errores de destino incorrectos en el panel de estadísticas de códigos de error de Apigee Edge. Los códigos de error de los errores de destino se contaban como errores de proxy. Se corrigió este problema y ahora se muestran los recuentos de errores de destino correctos. |
179674670 | Función |
Se agregó una nueva función que te permite filtrar la lista de productos de API ubicados en un JWT según los códigos de estado del producto.
Los productos de API tienen tres códigos de estado: Pendiente, Aprobado y Revocado.
Se agregó una nueva propiedad llamada
|
178423436 | Error |
Los valores de clave y secretos que se pasan en la CLI o a través de variables de entorno son visibles en los argumentos de línea de comandos del explorador de procesos.
Se informó un problema en el que la clave y los valores secretos de la micropuerta de enlace de Edge que se pasaban desde los argumentos de la línea de comandos o se configuraban a través de variables de entorno se mostraban en los argumentos de los procesos secundarios o de trabajo del nodo después de iniciar la micropuerta de enlace. Para solucionar este problema en el caso de la variable de entorno, los valores ya no son visibles en los argumentos de la línea de comandos del explorador de procesos. Si los valores de clave y secreto se pasan en la línea de comandos mientras se inicia la micropuerta de enlace, la configuración anula los valores de las variables de entorno, si están configurados. En este caso, los valores aún se pueden ver en los argumentos de la línea de comandos del explorador de procesos. |
178341593 | Error |
Se corrigió un error de documentación del complemento apikeys.
El archivo README del complemento apikeys
incluía incorrectamente una propiedad
La propiedad |
179366445 | Error |
Se abordó un problema por el que se descartaba la carga útil de todas las solicitudes GET a los objetivos.
Puedes controlar el comportamiento deseado con un nuevo parámetro de configuración, Por ejemplo: edgemicro: enable_GET_req_body: true Según la RFC 7231, sección 4.3.1: GET, la carga útil de una solicitud GET no tiene semántica definida, por lo que se puede enviar al destino. |
3.2.0
El jueves 21 de enero de 2021, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.2.0. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.2.0 | 3.2.0 | 3.2.0 | 3.2.0 | 3.2.0 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
152640618 | Error | Se habilitó el complemento extauth para configurar el encabezado x-api-key de modo que contenga el client_id en el objeto de solicitud cuando el token sea válido. Luego, x-api-key estará disponible para los complementos posteriores.
|
168836123, 172295489, 176462355, 176462872 | Función | Se agregó compatibilidad con Node.js 14. |
172376835 | Error | Usa la unidad de tiempo correcta para el extremo /token en el proxy edgemicro-auth .
Se solucionó un problema por el que el extremo
La corrección no cambia la duración del tiempo de vencimiento, sino solo la unidad de tiempo. Solo se aplica al campo Si los clientes se basaban en el valor Si los clientes siempre usaron los valores del token JWT para evaluar el período de actualización del token, no deberían tener que cambiar. |
173064680 | Error | Se corrigió un problema por el que la micropuerta de enlace finalizaba la solicitud de destino antes de que se procesaran todos los fragmentos de datos.
Este es un problema intermitente que se observa en las solicitudes de gran tamaño de carga útil y que se introdujo en la versión 3.1.7. |
174640712 | Error | Agrega un manejo de datos adecuado a los complementos.
Se agregó un manejo de datos adecuado a los siguientes complementos: |
Versión 3.1.x
Corrección de errores y mejoras v.3.1.x
3.1.8
El lunes 16 de noviembre de 2020, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.1.8. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.1.8 | 3.1.9 | 3.1.7 | 3.1.3 | 3.1.2 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
169201295 | Error | Los valores numéricos y booleanos se analizaron de forma incorrecta en las etiquetas de variables de entorno.
El manejo de reemplazo de variables de entorno analizaba todos los valores como cadenas, lo que generaba errores de análisis para valores booleanos o numéricos. Por ejemplo, |
169202749 | Error | El reemplazo de variables de entorno no funcionaba en algunos casos.
El manejo de reemplazo de variables de entorno no funcionaba para algunos atributos de configuración. Consulta Cómo configurar atributos de configuración con valores de variables de entorno para obtener información sobre las limitaciones. |
168732942 | Error | Se solucionó un problema por el que los permisos de OAuth no restringían el acceso de proxy de API como se esperaba.
El flujo |
170609716 | Error | Se solucionó un problema por el que el flujo /refresh en el proxy edgemicro-auth generaba un JWT sin apiProductList .
|
170708611 | Error | Los permisos de productos de la API no están disponibles para los complementos personalizados.
Los alcances de los productos de la API no estaban disponibles para los complementos personalizados ni se escribieron en el archivo de configuración de la caché. Consulta Información acerca de la función init() del complemento para ver cómo los complementos pueden acceder a los detalles del alcance. |
169810710 | Función | La clave y el secreto se guardan en el archivo de configuración de la caché.
La clave y el secreto de la Microgateway de Edge se guardaban en el archivo yaml de configuración de la caché cada vez que se recargaba o iniciaba. En la versión 3.1.8, la clave y el secreto ya no se guardan en el archivo de configuración de la caché. Si la clave y el secreto se escribieron anteriormente en el archivo de configuración de la caché, se quitarán. |
170708621 | Función | No se puede inhabilitar el complemento de estadísticas.
En versiones anteriores de la micropuerta de enlace, el complemento de estadísticas estaba habilitado de forma predeterminada y no había forma de
inhabilitarlo. En la versión 3.1.8, se introdujo un nuevo parámetro de configuración, |
159571119 | Error | Se produce un error nulo en el hook onerror_request en los complementos personalizados para el tiempo de espera de la respuesta o el socket.
Se realizaron correcciones para propagar el código de estado HTTP y el mensaje de error correctos para los eventos |
3.1.7
El jueves 24 de septiembre de 2020, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.1.7. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.1.7 | 3.1.8 | 3.1.6 | 3.1.2 | 3.1.1 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
131708105 | Error | El complemento analytics manejó de forma incorrecta la respuesta nula de las llamadas axpublisher y provocó que los trabajadores salieran.
|
133162200 | Error | La información de la app del desarrollador no se propagó en Analytics con respuestas de estado 403 causadas por rutas de recursos de productos no autorizadas o respuestas 401 causadas por un token vencido o no válido.
|
132194290 | Error | Los registros de Analytics se descartan cuando Apigee Edge rechaza algunos registros de Analytics.
|
158618994 | Error | Conexiones de cliente de Redis excesivas
|
161404373 | Error | En el caso de una respuesta de estado 404, se incluyó el URI de proxy completo en el mensaje de respuesta. |
166356972 | Error | Cuando se ejecutaba la Microgateway de Edge con la versión 12.13.x o posterior de Node.js, se generaba el siguiente error cuando se ejecutaban complementos que transformaban la carga útil de la solicitud: {"message":"write after end","code":"ERR_STREAM_WRITE_AFTER_END"}
|
168681746 | Error | La recarga manual de Edge Microgateway con redisBasedConfigCache:true no funcionaba.
|
149256174 | Error | No se registraron errores del complemento de OAuth para fallas de red.
|
166517190 | Error | Synchronizer no almacenó ni recuperó los datos de jwk_public_keys , y no los almacenó en Redis.
|
141659881 | Error | El manejo de errores del certificado de destino no válido mostró respuestas de error engañosas.
|
142808699 | Error | El complemento accesscontrol no controlaba correctamente las secciones "allow" y "deny".
La micropuerta de enlace ahora procesa la sección de rechazo correctamente y respeta el orden de las secciones “permitir” y “rechazar”. Se agregó una nueva propiedad |
3.1.6
El jueves 20 de agosto de 2020, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.1.6. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.1.6 | 3.1.7 | 3.1.5 | 3.1.1 | 3.1.1 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
163711992 | Función | Opciones de ubicación de archivos de claves y certificados personalizados para el comando rotatekey.
Para obtener detalles sobre estas nuevas opciones de comandos, consulta Rotación de claves. |
||||||||||||
154838259 | Error | Se corrigió la rotación de claves para varias instancias en varios centros de datos
Para obtener detalles sobre estas nuevas opciones de comandos, consulta Rotación de claves. |
||||||||||||
145525133 | Característica Alfa | Nuevas métricas de complementos
Consulta el archivo New plugin metrics de la sección de ayuda de GitHub para obtener más información. |
||||||||||||
159396879 | Error | Quita el Helper de paquetes que no se usen | ||||||||||||
161092943 | Error | La validación de la ruta base era incorrecta
Antes de la versión 3.1.6, la ruta base del proxy no coincidía de forma correcta cuando no terminaba con A continuación, se explica con más detalle el comportamiento anterior (que se corrigió en la versión 3.1.6):
Supongamos que un proxy se configura con la ruta base
|
||||||||||||
160431789 | Error | Complementos personalizados: No se propaga el objeto de configuración que se pasa a init
La configuración de Apigee Edge está disponible en el objeto de configuración para todos los plugins personalizados después de combinarse con el archivo de configuración de la micropuerta de enlace de Edge. Consulta config. |
||||||||||||
162758808 | Error | Nueva configuración de cuota para el almacenamiento en caché de Redis
Puedes usar la siguiente configuración para especificar un almacenamiento en caché de Redis para las cuotas. Para obtener más información, consulta Cómo usar un almacén de respaldo de Redis para la cuota. |
3.1.5
El viernes 26 de junio de 2020, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.1.5. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.1.5 | 3.1.6 | 3.1.4 | 3.1.0 | 3.1.0 |
Corrección de errores y mejoras:
ID del problema | Tipo | Descripción |
---|---|---|
159210507 | Función | Configuración para excluir el procesamiento de complementos
Se agregó una nueva función de configuración para omitir el procesamiento de complementos para URLs especificadas. Para obtener más información, consulta Cómo configurar URLs de exclusión para complementos. |
156986819, 158529319 | Error | Se corrigieron los problemas con el complemento json2xml
Se corrigieron los problemas en los que el complemento generaba encabezados Content-Type duplicados y en los que los encabezados no se enviaban al destino como se esperaba en algunos casos. |
156560067, 159688634 | Función | Cómo usar valores de variables de entorno en la configuración Se agregó una función que te permite especificar variables de entorno con etiquetas en el archivo de configuración. Las etiquetas de las variables de entorno especificadas se reemplazan por los valores reales de las variables de entorno. Los reemplazos se almacenan solo en la memoria y no en la configuración ni en los archivos de caché originales. Para obtener más información, consulta Cómo configurar atributos de configuración con valores de variables de entorno. |
155077210 | Error | Se corrigió un problema de formato de registro.
Se corrigió un problema por el que el host de destino aparecía en los registros con dos puntos adicionales. |
153673257 | Error | (Solo en Edge para la nube privada) No se extraen los productos compatibles con Microgateway Se corrigió un problema por el que no se extraían los productos compatibles con la micropuerta de enlace. Este problema solo existía en las instalaciones de Edge para la nube privada. |
154956890, 155008028, 155829434 | Función | Se admite filtrar los productos descargados por atributos personalizados
Para obtener más información, consulta Cómo filtrar productos por atributos personalizados. |
153949764 | Error | Se solucionó un problema en el que el proceso de la micropuerta de enlace de Edge fallaba cuando el archivo de destino de registro estaba lleno.
Se mejoró el manejo de excepciones para atrapar el error y mostrar un mensaje en la consola. |
155499600 | Error | Se solucionaron los problemas con la rotación de claves y la actualización de KVM
Consulta también Rotación de claves de JWT. |
3.1.4
El viernes 23 de abril de 2020, lanzamos la siguiente corrección a la Microgateway de Edge.
Corrección de errores:
Se corrigió un problema de dependencia en la versión 3.1.3. La versión 3.1.3 se marcó como obsoleto en el repositorio de npm. De lo contrario, todas las correcciones de errores y mejoras que se describen en las notas de la versión 3.1.3 se aplican a esta versión.
3.1.3
El miércoles 15 de abril de 2020, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.1.3. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.1.3 | 3.1.3 | 3.1.3 | 3.0.14 | 3.0.9 |
Corrección de errores y mejoras:
- 153509313: Se corrigió un problema por el que el módulo de depuración de Node.js generaba fugas de memoria. El problema existe en las versiones 3.1.0, 3.1.1 y 3.1.2.
- 153509313: Se solucionó un problema en el que se imprimía el mismo ID de mensaje para dos transacciones diferentes en el resultado de registro.
- 151673570: Se solucionó un problema por el que Edge Microgateway no se actualizaba para usar las nuevas APIs de KVM de Apigee. Edge Microgateway ahora usa los nuevos comandos para agregar y actualizar los valores de KVM.
- 152822846: En versiones anteriores, Edge Microgateway se actualizó para que su procesamiento de asignación de rutas de acceso de recursos coincida con el de Apigee Edge. En esta versión, se corrigió un problema por el que el patrón
/literal_string/*
no se manejaba correctamente. Por ejemplo,/*/2/*
. Consulta también Configura el comportamiento de una ruta de acceso de los recursos '/', '/*' y '/**'. - 152005003: Se realizaron cambios para habilitar los identificadores centrados en la organización y el entorno para las cuotas.
- 152005003: Se realizaron cambios para habilitar los identificadores centrados en la organización y el entorno para las cuotas. La combinación de "org + env + appName + productName" se usa como identificador de cuota.
3.1.2
El lunes 16 de marzo de 2020, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.1.3. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.1.2 | 3.1.2 | 3.1.2 | 3.0.13 | 3.0.9 |
Corrección de errores y mejoras:
- 151285018: Se realizó una mejora de la función para agregar compatibilidad con el proxy HTTP para el tráfico entre la Microgateway de Edge y los destinos de backend. Además, se solucionaron los problemas de compatibilidad con el proxy HTTP existente entre Edge Microgateway y Apigee Edge. Para obtener más información, consulta los siguientes vínculos:
- 149101890: Se cambió el código de notificación de registro de ERROR a INFO en los casos en que el servidor de destino o el balanceador de cargas cierran su conexión.
- 150746985: Se corrigió un problema por el que el comando
edgemicro verify
no funcionaba correctamente siredisBasedConfigCache: true
oquotaUri: https://%s-%s.apigee.net/edgemicro-auth
estaban presentes en el archivo de configuración. - 151284716: Se realizó una mejora para cerrar las conexiones del servidor más rápido cuando se reinician los trabajadores durante una recarga.
- 151588764: Se actualizó la versión de Node.js en la imagen de Docker que se usa para ejecutar Edge Microgateway en un contenedor de Docker a la 12, ya que la versión 8 de Node.js dejó de estar disponible.
- 151306049: Se realizó una actualización de la documentación para enumerar las APIs de administración de Apigee Edge que usan los comandos de CLI de Edge Microgateway. Consulta ¿Qué APIs de administración usa Edge Microgateway?.
3.1.1
El jueves 20 de febrero, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.1.1. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.1.1 | 3.1.1 | 3.1.1 | 3.0.13 | 3.0.9 |
Corrección de errores y mejoras:
-
146069701: Se corrigió un problema por el que el módulo
microgateway-core
no respetaba las variables de entornoHTTP_PROXY
yHTTPS_PROXY
. Con este cambio, la configuración de proxy en el archivo de configuración YAML, si se especifica, ahora se ignora. Solo se usan las variables de entorno para especificar el proxy.Si deseas especificar la configuración del proxy en el archivo de configuración, también debes especificar una variable
HTTP_PROXY
que mencione la misma URL del proxy que se especifica en el archivo de configuración. Por ejemplo, si especificas la siguiente configuración:edge_config: proxy: http://10.128.0.20:3128 proxy_tunnel: true
También debes especificar esta variable de entorno:
HTTP_PROXY=http://10.128.0.20:3128
- 146320620: Se agregó un nuevo parámetro de configuración,
edgemicro.headers_timeout
. Este atributo limita la cantidad de tiempo (en milisegundos) que el analizador HTTP esperará para recibir los encabezados HTTP completos. Por ejemplo:edgemicro: keep_alive_timeout: 6000 headers_timeout: 12000
De forma interna, el parámetro establece el atributo
Server.headersTimeout
de Node.js en las solicitudes. (Predeterminado: 5 segundos más que el tiempo establecido conedgemicro.keep_alive_timeout
). Este parámetro de configuración predeterminado evita que los balanceadores de cargas o los proxies descarten la conexión por error. 149278885: Se agregó una nueva función que te permite establecer el tiempo de espera de la API de destino a nivel del proxy de la API en lugar de usar una configuración de tiempo de espera global.
Si configuras la propiedad TargetEndpoint
io.timeout.millis
en el proxy de API, Edge Microgateway podrá recuperar esa propiedad y aplicar tiempos de espera específicos del extremo de destino. Si no se aplica este parámetro, Edge Microgateway usa el tiempo de espera global especificado conedgemicro.request_timeout
.
3.1.0
El martes 21 de enero, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.1.0. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.1.0 | 3.1.0 | 3.1.0 | 3.0.12 | 3.0.9 |
Corrección de errores y mejoras:
-
144187500: Se registrará un nuevo evento de nivel WARN cuando se active la marca
quotas.failOpen
. Esta marca se activa si se produce un error de procesamiento de cuotas o si la solicitud de "aplicación de cuotas" a Edge no actualiza los contadores de cuotas remotos. En este caso, la cuota se procesará según los recuentos locales solo hasta que se realice la próxima sincronización de cuotas remotas correcta. Anteriormente, este evento solo se registraba cuando el nivel de registro se configuraba en DEBUG.Por ejemplo:
2020-01-20T02:52:53.040Z [warn][localhost:8000][5][foo-eval][test][hello/][] [DbpGIq9jKfzPX8jvXEivhA0LPwE][f372cc30-3b2f-11ea-845f-a627f][quota][remote quota not available so processing locally, setting quota-failed-open for identifier: AppQuota60.Quota60] [GET][][][][]
- 145023519: Se solucionó un problema en el que se veían afectadas las transacciones en curso o nuevas cada vez que Edge Microgateway detectaba un cambio en un proxy de API. Ahora, cuando se realiza un cambio en un proxy, la Microgateway de Edge actualiza la caché y se reinician los nodos de trabajo. Con este cambio, no se verán afectadas las transacciones en curso ni las nuevas llamadas a la API que se envían a la micropuerta de enlace.
- 146378327: Se cambió el nivel de registro de
sourceRequest
,targetRequest
ytargetResponse
al nivel INFO. - 146019878: Se corrigió una discrepancia entre la latencia que se calculó para "Rendimiento del proxy de la API" en las estadísticas de Edge y los eventos de registro sourceResponse/targetResponse de la micropuerta de enlace de Edge. Ahora, la latencia en las estadísticas de Edge y los eventos de registro de Microgateway están alineados.
- Cambios relacionados con la lógica de coincidencia de patrones:
- 147027862: Se actualizó el complemento de OAuth para admitir los siguientes patrones de coincidencia de ruta de acceso de recursos, como se especifica en Productos de API:
/{literal}**
/{literal}*
- Cualquier combinación de los dos patrones anteriores
Con este cambio, el complemento de Microgateway de Edge ahora sigue la misma coincidencia de patrones que Apigee Edge, como se explica en Configura el comportamiento de una ruta de acceso de los recursos '/', '/*' y '/**'.
- 145644205: Se actualizó la lógica de coincidencia de patrones del complemento apiKeys para que coincida con el complemento de OAuth.
- 147027862: Se actualizó el complemento de OAuth para admitir los siguientes patrones de coincidencia de ruta de acceso de recursos, como se especifica en Productos de API:
- 143488312: Se solucionó un problema por el que los espacios iniciales o finales en el parámetro de ID de cliente provocaban que la creación de la lista de productos JWT estuviera vacía para las solicitudes de token de OAuth y clave de API.
- 145640807 y 147579179: Se agregó una nueva función que permite que una instancia especial de la micropuerta de enlace de Edge llamada "el sincronizador" recupere datos de configuración de Apigee Edge y los escriba en una base de datos Redis local. Luego, se pueden configurar otras instancias de micropuerta de enlace para que lean sus datos de configuración desde la base de datos. Esta función agrega un nivel de resiliencia a Edge Microgateway.
Permite que las instancias de micropuerta de enlace se inicien y funcionen sin necesidad de comunicarse con Apigee Edge. Para obtener más información, consulta Cómo usar el sincronizador.
Actualmente, la función de sincronizador es compatible con Redis 5.0.x.
Versión 3.0.x
Corrección de errores y mejoras de la versión 3.0.x
3.0.10
El viernes 8 de noviembre, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se enumeran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.0.10. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.0.10 | 3.0.8 | 3.0.8 | 3.0.11 | 3.0.8 |
Corrección de errores y mejoras:
-
142677575: Se realizó una actualización de funciones para que la coincidencia de patrones de las rutas de recursos que se usan en los productos de API para Edge Microgateway ahora se alinee con la coincidencia de patrones de rutas de recursos que usa Apigee Edge, como se describe en Configuración del comportamiento de una ruta de recursos de '/', '/*' y '/**'.
Nota: Si usas un patrón de recursos compuesto, como
/*/2/**
, debes asegurarte de que el proxyedgemicro_auth
se agregue a un producto de API independiente. Luego, debes incluir ese producto en la app para desarrolladores del proxy, como se muestra en la siguiente captura de pantalla:Nota: La propiedad de configuración
features.isSingleForwardSlashBlockingEnabled
, como se describe en Configura el comportamiento de una ruta de acceso de los recursos '/', '/*' y '/**', no es compatible con la Microgateway de Edge. 143740696: Cambió la estructura de configuración de
quotas
(consulta también las notas de la versión 3.0.9). La propiedadquotas
se usa para configurar el complemento de cuota. El cambio en la estructura se realizó para mejorar la claridad de los elementos de configuración. Para configurar el complemento de cuota, usa la siguiente configuración YAML. Ten en cuenta que la propiedad de configuración se llamaquotas
. Para obtener detalles sobre las propiedades de configuración individuales dequotas
, consulta Opciones de configuración de la cuota.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 - quota quotas: bufferSize: hour: 20000 minute: 500 default: 10000 useDebugMpId: true failOpen: true ...
- 141750056: Se agregó una nueva función que te permite usar Redis como el almacenamiento de respaldo de la cuota.
Si
useRedis
es verdadero, se usa el módulo voto-quota-redis. Cuando es verdadero, la cuota se restringe solo a las instancias de Microgateway de Edge que se conectan a Redis. Si es falso, se usa el módulo volos-quota-apigee como almacén de respaldo, y el contador de cuotas es global. Para obtener más información, consulta Opciones de configuración de la cuota. Por ejemplo:edgemicro: ... quotas: useRedis: true redisHost: localhost redisPort: 6379 redisDb: 1
- 140574210: Se cambió el tiempo de vencimiento predeterminado para los tokens generados por el proxy
edgemicro-auth
de 108,000 milisegundos (1.8 minutos) a 1,800 segundos (30 minutos). - 143551282: Para admitir organizaciones habilitadas para SAML, se actualizó el comando
edgemicro genkeys
para incluir un parámetro‑‑token
. Este parámetro te permite usar un token de OAuth para la autenticación en lugar de un nombre de usuario o una contraseña. Para obtener más detalles, consulta Genera claves.
3.0.9
El viernes 11 de octubre, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.0.9. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.0.9 | 3.0.7 | 3.0.7 | 3.0.10 | 3.0.7 |
Corrección de errores y mejoras:
- 141989374: Se agregó una nueva función "fail open" para el complemento de cuota.
Cuando esta función está habilitada, si se produce un error de procesamiento de cuotas o si la solicitud de "aplicación de cuotas" a Edge no actualiza los contadores de cuotas remotos, la cuota se procesará en función de los recuentos locales solo hasta que se realice la próxima sincronización de cuotas remotas correcta. En ambos casos, se establece una marca
quota-failed-open
en el objeto de solicitud.Para habilitar la función de "fallo abierto" de la cuota, establece la siguiente configuración:
quotas : failOpen : true
Nota: Además, se cambió el nombre de la marca de objeto de solicitud
fail-open
del complemento de OAuth aoauth-failed-open
. - 142093764: Se realizó un cambio de configuración en el proxy
edgemicro-auth
para evitar desbordamientos de cuota. El cambio es establecer el tipo de cuota en calendario. Para usar esta mejora, debes actualizar tuedgemicro-auth
a la versión 3.0.7 o una posterior. - 142520568: Se agregó una nueva función para habilitar el registro del ID del procesador de mensajes (MP) en las respuestas de cuota. Para usar esta función, debes actualizar tu proxy
edgemicro-auth
a la versión 3.0.7 o una posterior, y establecer la siguiente configuración:quotas: useDebugMpId: true
Cuando se establezca
useDebugMpId
, las respuestas de cuota de Edge contendrán el ID de MP y Edge Microgateway las registrará. Por ejemplo:{ "allowed": 20, "used": 3, "exceeded": 0, "available": 17, "expiryTime": 1570748640000, "timestamp": 1570748580323, "debugMpId": "6a12dd72-5c8a-4d39-b51d-2c64f953de6a" }
3.0.8
El jueves 26 de septiembre, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.0.8. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.0.8 | 3.0.6 | 3.0.6 | 3.0.9 | 3.0.6 |
Corrección de errores y mejoras:
- 140025210: Se agregó una nueva función de "fallo abierto". Esta función permite que el procesamiento de la API continúe si no se puede actualizar un token JWT vencido debido a un error de conexión que impide que se realice una llamada de verificación de clave de API correcta al proxy
edgemicro-auth
.La función te permite establecer un período de gracia en el que el token anterior permanece en la caché y se vuelve a usar hasta que vence el período de gracia. La función permite que la micropuerta de enlace de Edge continúe procesando solicitudes en caso de una falla de conexión temporal. Cuando se reanuda la conectividad y se realiza una llamada correcta a Verify API Key, se recupera un JWT nuevo y se reemplaza el JWT anterior en la caché.
Para configurar la nueva función "fail open", haz lo siguiente:
- Establece las siguientes propiedades en la estrofa
oauth
del archivo de configuración de la micropuerta de enlace de Edge:oauth: failOpen: true failopenGraceInterval: time_in_seconds cacheKey: true ...
Por ejemplo:
oauth: failOpen: true failopenGraceInterval: 5 cacheKey: true ...
En este ejemplo, se usará el token anterior durante 5 segundos si no se puede actualizar debido a un problema de conectividad. Después de 5 segundos, se mostrará un error de autenticación.
- Establece las siguientes propiedades en la estrofa
- 141168968: Se realizó una actualización para incluir
correlation_id
en todos los resultados de registro del complemento. Además, los niveles de registro de algunos registros se cambiaron aerror
según sea necesario. - 140193349: Se realizó una actualización en el proxy
edgemicro-auth
para que se requiera que la clave y el secreto de la Microgateway de Edge se verifiquen en cada solicitud de verificación de la clave de API. La Microgateway de Edge se actualizó para enviar siempre la clave y el secreto en cada solicitud de verificación de la clave de API. Este cambio impide que los clientes obtengan un JWT con solo una clave de API. - 140090250: Se realizó una actualización para agregar registros de diagnóstico para el procesamiento de cuotas. Con este cambio, ahora es posible correlacionar el resultado del registro de cotización con el resto de los registros de la micropuerta de enlace de Edge.
3.0.7
El jueves 12 de septiembre, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Versiones de componentes:
En la siguiente tabla, se muestran los números de versión de los proyectos de componentes individuales asociados con Edge Microgateway 3.0.7. Ten en cuenta que, como cada componente es un proyecto independiente, es posible que los números de versión no coincidan con la versión principal del producto:
microgateway | core | config | complementos | edgeauth |
---|---|---|---|---|
3.0.7 | 3.0.5 | 3.0.5 | 3.0.8 | 3.0.5 |
Corrección de errores y mejoras:
140075602: Se actualizó el complemento de OAuth para que devuelva un código de estado 5xx cuando corresponda. Anteriormente, el complemento solo mostraba códigos de estado 4xx en todos los casos que no eran 200. Ahora, para cualquier respuesta de mensaje que no sea un estado 200, se mostrará el código 4xx o 5xx exacto, según el error.
Esta función está inhabilitada de forma predeterminada. Para habilitar esta función, agrega la propiedad
oauth.useUpstreamResponse: true
a la configuración de Edge Microgateway. Por ejemplo:oauth: allowNoAuthorization: false allowInvalidAuthorization: false gracePeriod: 10 useUpstreamResponse: true
- 140090623: En la versión 3.0.6, se agregó una nueva propiedad de configuración:
quota.quotaUri
. Establece esta propiedad de configuración si deseas administrar las cuotas a través del proxyedgemicro-auth
que se implementa en tu organización. Si no se configura esta propiedad, el extremo de cuota se establece de forma predeterminada en el extremo interno de la micropuerta de enlace de Edge. Por ejemplo:edge_config: quotaUri: https://%s-%s.apigee.net/edgemicro-auth
En la versión 3.0.7, se actualizó
edgemicro-auth
para aceptar esta nueva configuración. Para usar la propiedadquotaUri
, debes actualizar al proxyedgemicro-auth
más reciente. Para obtener más información, consulta Actualiza el proxy de edgemicro-auth. - 140470888: Se agregó un encabezado de autorización a las llamadas de cuota para proporcionar autenticación.
Además, se modificó el proxy
edgemicro-auth
para quitar "organization" del identificador de cuota. Debido a que el extremo de la cuota reside en la organización del cliente, ya no se necesita el identificador de cuota. - 140823165: El siguiente nombre de propiedad:
edgemicro: keepAliveTimeout
se documentó de forma incorrecta en la versión 3.0.6. El nombre correcto de la propiedad es el siguiente:
edgemicro: keep_alive_timeout
- 139526406: Se corrigió un error en el que se producía un recuento incorrecto de la cuota si una app de desarrollador tenía varios productos. Ahora, la cuota se aplica correctamente para cada producto en una app que tiene varios productos. La combinación de "appName + productName" se usa como identificador de cuota.
3.0.6
El jueves 29 de agosto, lanzamos las siguientes correcciones y mejoras en la micropuerta de enlace de Edge.
- 138633700: Se agregó una nueva propiedad de configuración,
keepAliveTimeout
. Esta propiedad te permite establecer el tiempo de espera de Edge Microgateway (en milisegundos). (Predeterminado: 5,000 milisegundos)Por ejemplo:
edgemicro: keep_alive_timeout: 600
- 140090623: Se agregó una nueva propiedad de configuración,
quotaUri
. Establece esta propiedad de configuración si deseas administrar cuotas a través del proxyedgemicro-auth
que se implementa en tu organización. Si no se configura esta propiedad, el extremo de cuota se establece de forma predeterminada en el extremo interno de la micropuerta de enlace de Edge. Por ejemplo:edge_config: quotaUri: https://your_org-your_env.apigee.net/edgemicro-auth
Para usar esta función, primero debes implementar la versión más reciente del proxy
edgemicro-auth
en tu organización. Para obtener más información, consulta Actualiza el proxy edgemicro-auth. - 138722809: Se agregó una nueva propiedad de configuración,
stack_trace
. Esta propiedad te permite controlar si los seguimientos de pila aparecen o no en los archivos de registro. Por ejemplo:stack_trace: false
Si
stack_trace
se configura comotrue
, el seguimiento de pila se imprimirá en los registros. Si se establece enfalse
, el seguimiento de pila no se imprimirá en los registros.
3.0.5
El jueves 15 de agosto, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
Se corrigieron errores- 139005279: Se corrigió un problema por el que el comando
edgemicro status
no mostraba la cantidad correcta de procesos de trabajo. - 138437710: Se corrigió un problema en la clase ExitCounter que impedía que se escribiera el registro correcto.
- 139064652: Se agregó la capacidad de agregar niveles de registro
trace
ydebug
para los registros de eventos y del sistema. Por ahora, solo se agregó la capacidad de agregar estos niveles de registro. Actualmente, los niveles de registro disponibles soninfo
,warn
yerror
. - 139064616: Se estandarizó la salida de registro para todas las instrucciones de registro de la consola. Las instrucciones de registro de la consola ahora incluyen estos atributos:
- Marca de tiempo
- Nombre del componente
- ID de proceso
- Mensaje del registro de la consola
- 138413755: Se mejoraron los mensajes de registro relacionados con la clave y el secreto de JWT para los siguientes comandos de CLI: cert, verify, upgradekvm, token, genkeys, revokekeys, rotatekey y configure.
- 138413577: Se agregó y mejoró el manejo de errores para los tiempos de espera del servicio de backend.
- 138413303: Se agregó y mejoró el manejo de errores para los tiempos de espera de respuesta y socket.
- 138414116: Se agregó y mejoró el manejo de errores de “conexión rechazada”.
3.0.4
El jueves 1 de agosto, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
- 134445926: Se realizaron mejoras en la autenticación interna de Edge Microgateway.
- 137582169: Se solucionó un problema por el que se iniciaban procesos no deseados. Los procesos adicionales provocaron que los complementos se volvieran a cargar y usaran memoria en exceso. La micropuerta de enlace de Edge ahora mantiene la cantidad de procesos dentro del límite esperado.
- 137768774: Se realizaron mejoras en los mensajes de registro:
- Se limpiaron los registros de transacciones (solicitudes).
- Se agregaron más mensajes de registro donde fue necesario.
- Se movieron los mensajes de registro de transacciones (solicitudes) del resultado de la consola al archivo de registro relevante.
- Se actualizaron los registros de la consola para usar una función de registro centralizada.
- 138321133, 138320563: Cambio interno fundamental en el búfer de cuota para habilitar mejoras futuras de la cuota.
3.0.3
El martes 23 de julio, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
- Mejoras en el registro: Los registros de entorno de ejecución existentes usan una nueva función
eventLog()
que captura y registra los datos del entorno de ejecución en un formato coherente. La información de registro incluye lo siguiente:- Marca de tiempo (ISO 8601: AAAA-MM-DDHH:mm:ss.sssZ)
- Nivel de registro (error, advertencia o información).
- Nombre de host: Es el nombre de host solicitante del encabezado de la solicitud.
- ID de proceso: Si ejecutas un clúster de procesos de Node.js, este es el ID del proceso en el que se produjo el registro.
- Es el nombre de la organización de Apigee.
- Es el nombre del entorno en la organización.
- Es el nombre del proxy de API.
- Dirección IP del cliente.
- ClientId.
- ID de correlación (no se establece actualmente).
- Es el nombre del componente de Edge Microgateway.
- Mensaje personalizado: Algunos objetos pueden imprimir información adicional que se pasa a esta propiedad de error.
- Es el método de solicitud (si es una solicitud HTTP).
- Código de estado de la respuesta (si es una solicitud HTTP).
- Mensaje de error
- Código de error: Si un objeto incluye un código de error, se imprime en esta propiedad.
- Tiempo transcurrido
- marcador de fin de línea del sistema operativo
Los valores de propiedades nulos generan corchetes vacíos,
[]
.En el siguiente ejemplo, se muestra el formato del registro:
Timestamp [level][hostname][ProcessId][Org][Environment][APIProxy][ClientIp][ClientId][][component][customMessage][reqMethod][respStatusCode][errMessage][errCode][timeTaken]
(137770055)
- Rendimiento: Los productos de API no se filtraban según el entorno. Se corrigió este problema. (135038879)
- Se realizaron varias integraciones de pruebas funcionales y mejoras en la calidad del código.
3.0.2
El miércoles 3 de julio de 2019, lanzamos las siguientes correcciones y mejoras en Edge Microgateway.
Calidad del código: Se revisó la calidad del código y se realizaron cambios para cumplir con los estándares de calidad que solicitan los usuarios. Solucionamos los errores y las advertencias de calidad del código derivados de JSHint.
Como resultado, se identificaron y repararon algunos errores de código reales. Todos los módulos de Apigee Edge Microgateway se sometieron a este proceso. Consulta las confirmaciones del 28 de junio y el 2 de julio para
microgateway-config
,
microgateway-core
,
microgateway-plugins
y
microgateway
.
Todos los módulos con cambios de calidad de código se probaron con herramientas internas que verifican la ejecución de la micropuerta de enlace de Edge para casos de uso de los clientes.
3.0.1
El viernes 21 de junio de 2019, lanzamos las siguientes correcciones y mejoras en la Microgateway de Edge.
- 134834551: Se cambiaron las versiones compatibles de Node.js para la Microgateway de Edge
(versiones compatibles de Node.js: 8 y 12; las versiones 7, 9 y 11 son experimentales) - 134751883: Edge Microgateway falla cuando se vuelve a cargar durante la carga.
- 134518428: El extremo de productos de la Microgateway de Edge muestra un error 5XX si el patrón de filtro es incorrecto.
- 135113408: Los trabajadores deben reiniciarse si se cancelan de forma inesperada.
- 134945852: No se usa tokenCacheSize en el complemento de OAuth.
- 134947757: Se estableció cacheTTL en el complemento de OAuth.
- 135445171: El cálculo de gracePeriod en OAuth no es correcto.
- Usa el módulo memorizado proporcionado con la instalación de Edge Microgateway
- 135367906 - Auditoría de seguridad
Versión 2.5.x
Nuevas funciones y mejoras de la versión 2.5.x
(Se corrigió en la versión 2.5.38, el 7/6/2019)
Los JWT con formato incorrecto pueden provocar que los trabajadores fallen cuando se usa la caché de tokens. Se corrigió en el módulo de complementos de Edge microgateway. (b/134672029).
(Se agregó en la versión 2.5.37) Se agregó la opción de CLI edgemicro-cert -t
.
La opción edgemicro cert -t
te permite especificar un token de OAuth para autenticar las APIs de administración. Consulta también Cómo administrar certificados.
(Se agregó en la versión 2.5.35) Se agregó compatibilidad para depurar Edge Microgateway con edgemicroctl
.
Puedes usar la marca mgdebug
con edgemicroctl
. Consulta también
Tareas de integración de Kubernetes.
(Se agregó en la versión 2.5.35) Se habilitó una compilación de Windows para edgemicroctl
.
(Se agregó en la versión 2.5.31) Nueva API de edgemicro-auth/token
Se agregó una nueva API de edgemicro-auth/token que te permite pasar el cliente o el secreto como un encabezado de autorización básica codificado en Base64 y el grant_type como un parámetro de formulario. Consulta Cómo obtener tokens del portador directamente.
(Se corrigió en la versión 2.5.31) La configuración privada no respeta la marca de token
Se solucionó un problema por el que la configuración de Edge Microgateway para usar un token de acceso de OAuth2 en Edge para Private Cloud no funcionaba correctamente (no se respetaba el token).
Docker: Compatibilidad con el uso de certificados autofirmados
(Se agregó el 2.5.29) Si usas una autoridad certificadora (AC) que Node.js no confía de forma predeterminada, puedes usar el parámetro NODE_EXTRA_CA_CERTS
cuando ejecutas un contenedor de Docker con Edge Microgateway.
Para obtener más información, consulta Cómo usar una AC que no es de confianza para Node.js.
Docker: Compatibilidad con TLS
(Se agregó el 2.5.29) Edge Microgateway que se ejecuta en un contenedor de Docker ahora admite TLS para las solicitudes entrantes al servidor de Edge Microgateway (solicitudes orientadas al norte) y para las solicitudes salientes de Edge Microgateway a una aplicación de destino (solicitudes orientadas al sur).
En los siguientes ejemplos, se explica en detalle cómo configurar estas configuraciones de TLS:
En estos ejemplos, verás cómo usar el punto de activación del contenedor /opt/apigee/.edgemicro
para cargar los certificados, a los que se hace referencia en el archivo de configuración de Edge Microgateway.
Docker: Compatibilidad con el proxy de solicitudes
(Se agregó el 2.5.27) Si ejecutas Edge Microgateway en un contenedor de Docker, puedes usar estas opciones para controlar el comportamiento del proxy cuando la micropuerta de enlace se ejecuta detrás de un firewall:
HTTP_PROXY
HTTPS_PROXY
NO_PROXY
Para obtener más detalles, consulta Cómo ejecutar Edge Micro como un contenedor de Docker.
Docker: Se actualizaron las instrucciones del complemento
(Se agregó el 2.5.27) Si ejecutas Edge Microgateway en un contenedor de Docker, ahora tienes dos opciones para implementar complementos. Una opción, que usa un punto de activación de Docker, es nueva. La otra opción existía anteriormente y, básicamente, no cambió. Sin embargo, se actualizó el Dockerfile. Para obtener más información, consulta los siguientes vínculos:
- Opción A: Activa el directorio de complementos en un volumen (nuevo)
- Opción B: Compila los complementos en el contenedor (actualizada)
Nueva compatibilidad con tokens de OAuth para el comando de actualización de KVM
(Se agregó el 2.5.27) Puedes usar un token de OAuth con el comando upgradekvm
. Para obtener más información, consulta Cómo actualizar el KVM.
Cómo segregar APIs en Edge Analytics
(Se agregó el 2.5.26) Las nuevas marcas del complemento de estadísticas te permiten separar una ruta de acceso a la API específica para que aparezca como un proxy independiente en los paneles de Edge Analytics. Por ejemplo, puedes separar las APIs de verificación de estado para evitar confundirlas con llamadas a la API reales. Para obtener más información, consulta Cómo excluir rutas de las estadísticas.
Configura un proxy local
(Se agregó el 2.5.25) Con un proxy local, no es necesario que crees manualmente un proxy compatible con Microgateway en Apigee Edge. En su lugar, la micropuerta de enlace usará la ruta de acceso base del proxy local. Para obtener más información, consulta Cómo usar el modo de proxy local.
Cómo usar el modo independiente
(Se agregó el 2.5.25) Puedes ejecutar Edge Microgateway desconectado por completo de cualquier dependencia de Apigee Edge. Esta situación, llamada modo independiente, te permite ejecutar y probar Edge Microgateway sin una conexión a Internet. Consulta Cómo ejecutar Edge Microgateway en modo independiente.
Cómo revocar claves
(Se agregó el 2.5.19) Se agregó un nuevo comando de CLI que revoca la clave y las credenciales secretas de una configuración de la Microgateway de Edge.
edgemicro revokekeys -o [organization] -e [environment] -u [username] -k [key] -s [secret]
Compatibilidad con Docker
(Se agregó el 2.5.19) Ahora puedes descargar la versión más reciente de Edge Microgateway como una imagen de Docker:
docker pull gcr.io/apigee-microgateway/edgemicro:latest
Compatibilidad con Kubernetes
(Se agregó el 2.5.19) Puedes implementar Edge Microgateway como un servicio o como una puerta de enlace de sidecar frente a los servicios implementados en un clúster de Kubernetes. Consulta: Integra Edge Microgateway con la descripción general de Kubernetes.
Compatibilidad con la opción nodelay de TCP
(Se agregó el 2.5.16) Se agregó un nuevo parámetro de configuración, nodelay
, a la configuración de Edge Micro.
De forma predeterminada, las conexiones TCP usan el algoritmo de Nagle para almacenar en búfer los datos antes de enviarlos. Si estableces nodelay
en true
, se inhabilita este comportamiento (los datos se activarán de inmediato cada vez que se llame a socket.write()
). Consulta también la documentación de
Node.js para obtener más detalles.
Para habilitar nodelay
, edita el archivo de configuración de Edge Micro de la siguiente manera:
edgemicro: nodelay: true port: 8000 max_connections: 1000 config_change_poll_interval: 600 logging: level: error dir: /var/tmp stats_log_interval: 60 rotate_interval: 24
Nuevas opciones de CLI para la supervisión de Forever
(Agregado el 2.5.12) Se agregaron nuevos parámetros al comando edgemicro forever
. Estos parámetros te permiten especificar la ubicación del archivo forever.json
y, además, iniciar o detener el proceso en segundo plano de Forever. Consulta también Supervisión para siempre
Parámetro | Descripción |
---|---|
-f, --file | Especifica la ubicación del archivo forever.json . |
-a, --action | start o stop El valor predeterminado es inicio. |
Ejemplos:
Para comenzar a usar Siempre, sigue estos pasos:
edgemicro forever -f ~/mydir/forever.json -a start
Para detener Forever, haz lo siguiente:
edgemicro forever -a stop
Rotación de claves de JWT
Se agregó una nueva función que te permite rotar los pares de claves públicas/privadas que se usan para generar los tokens JWT que se usan para la seguridad de OAuth en la micropuerta de enlace de Edge. Consulta Rotación de claves de JWT.
Filtrar los proxies de API descargados
De forma predeterminada, Edge Microgateway descarga todos los proxies de tu organización de Edge que comienzan con el prefijo de nombres “edgemicro_”. Puedes cambiar este valor predeterminado para descargar proxies cuyos nombres coincidan con un patrón. Consulta Filtra los proxies descargados.
Especifica productos sin proxies de API
En Apigee Edge, puedes crear un producto de API que no contenga ningún proxy de API. Esta configuración de productos permite que una clave de API asociada con ese producto funcione con cualquier proxy implementado en tu organización. A partir de la versión 2.5.4, Edge Microgateway admite esta configuración del producto.
Compatibilidad con la supervisión permanente
Edge Microgateway tiene un archivo forever.json
que puedes configurar para controlar cuántas veces y con qué intervalos se debe reiniciar Edge Microgateway. Este archivo configura un servicio llamado forever-monitor, que administra Forever de forma programática. Consulta
Supervisión para siempre.
Administración central del archivo de configuración de Edge Micro
Si ejecutas varias instancias de Edge Microgateway, te recomendamos que administres sus configuraciones desde una sola ubicación. Para ello, especifica un extremo HTTP en el que Edge Micro pueda descargar su archivo de configuración. Consulta Cómo especificar un extremo de archivo de configuración.
Compatibilidad con la opción de CLI forever
(Se agregó en la versión 2.5.8) Usa el comando edgemicro forever [package.json]
para especificar la ubicación del archivo forever.json
. Antes de agregar este comando, el archivo de configuración debía estar en el directorio raíz de Edge Microgateway.
Por ejemplo:
edgemicro forever ~/mydir/forever.json
Se agregó la opción configUrl al comando reload
(Se agregó en la versión 2.5.8) Ahora puedes usar la opción --configUrl
o -u
con el comando edgemicro reload
.
Período de gracia para discrepancias de tiempo de JWT
(Se agregó en la versión 2.5.7) Un atributo gracePeriod en la configuración de OAuth ayuda a evitar errores causados por discrepancias leves entre el reloj del sistema y las marcas de tiempo de no antes (nbf) o emitido (iat) especificadas en el token de autorización JWT. Establece este atributo en la cantidad de segundos para permitir esas discrepancias. Consulta Atributos de OAuth.
(Se agregó en la versión 2.5.7) Un atributo gracePeriod en la configuración de OAuth ayuda a evitar errores causados por discrepancias leves entre el reloj del sistema y las marcas de tiempo de no antes (nbf) o emitido (iat) especificadas en el token de autorización JWT. Establece este atributo en la cantidad de segundos para permitir esas discrepancias. Consulta Atributos de OAuth.
Errores corregidos en la versión 2.5.x
- (Problema #236) Se corrigió el error tipográfico al borrar la caché.
- (Error #234) Se producen fallas de recarga en Edge Microgateway 2.5.35.
- (Problema #135) Se produjo un error de referencia de host virtual no válida cuando se usaba la opción -v. Esta corrección modifica el proxy de edgemicro-auth antes de la implementación para garantizar que los hosts virtuales coincidan exactamente con lo que se especifica en la marca "-v". Además, puedes especificar cualquier cantidad de nombres para el host virtual (ya no se limita a los predeterminados y seguros).
- (Problema #141) El comando edgemicro reload no admite la opción de archivo de configuración -c. Ya corregimos el problema.
- (Problema #142) Edge Microgateway se queja de la criptografía obsoleta en el momento de la instalación. Ya corregimos el problema.
- (Problema #145) La cuota no funciona con Edge Microgateway. Ya corregimos el problema.
- (Problema de la comunidad de Apigee: https://community.apigee.com/questions/33149/emg-jwt-token-validated-against-both-api-proxies-a.html#answer-33336) El token JWT se validó en los proxies de API y en el URI de recursos en OAUTH. Se corrigió este problema.
- (Problema de la comunidad de Apigee: https://community.apigee.com/questions/47846/microgateway-not-working-with-oauth.html) La micropuerta de enlace no funciona con OAuth. Ya corregimos el problema.
- Se corrigió pidPath en Windows.
- (Problema #157) Se corrigió el problema que causaba el siguiente mensaje de error:
ReferenceError: deployProxyWithPassword
no está definido. - (Problema #169) Se actualizaron las dependencias de Node.js (auditoría de npm).
- El proxy
edgemicro-auth
ahora usa las políticas de JWT de Edge. El proxy ya no depende de Node.js para proporcionar compatibilidad con JWT.
Versión 2.4.x
Nuevas funciones y mejoras de la versión 2.4.x
1. Se configuró un alias personalizado para el proxy de edgemicro-auth (PR 116).
Puedes cambiar la ruta de acceso base predeterminada del proxy edgemicro-auth. De forma predeterminada, la ruta base es /edgemicro-auth. Para cambiarlo, usa la marca -x en el comando edgemicro configure.
Ejemplo:
edgemicro configure -x /mypath …
2. Compatibilidad con comodines para las rutas de acceso base (PR 77)
Puedes usar uno o más comodines “*” en la ruta base de un proxy edgemicro_*. Por ejemplo, una ruta base de /team/*/members permite que los clientes llamen a https://[host]/team/blue/members y a https://[host]/team/green/members sin necesidad de crear proxies de API nuevos para admitir equipos nuevos. Ten en cuenta que no se admite /**/.
Importante: Apigee NO admite el uso de un comodín “*” como el primer elemento de una ruta base. Por ejemplo, NO se admite: /*/search.3. Se agregó la ruta de configuración personalizada a CLI para la configuración de la nube privada (PR 99).
De forma predeterminada, el archivo de configuración de la micropuerta de enlace se encuentra en ./config/config.yaml. En los comandos init, configure y start, ahora puedes especificar una ruta de configuración personalizada en la línea de comandos con las marcas -c o --configDir. Se solucionó un problema por el que no se reconocía un directorio de configuración personalizado para las instalaciones de Private Cloud.
Ejemplo:
edgemicro start -o docs -e test -k abc123 -s xyz456 -c /home/microgateway/config
4. Respeto de las variables *_PROXY (PR 61)
Si Edge Microgateway está instalada detrás de un firewall y no puede comunicarse con Apigee Edge en la nube pública, hay dos opciones que debes considerar:
Opción 1:
La primera opción es establecer la opción edgemicro: proxy_tunnel como verdadera en el archivo de configuración de la micropuerta de enlace:
edge_config: proxy: http://10.224.16.85:3128 proxy_tunnel: true
Cuando proxy_tunnel es true, la Microgateway de Edge usa el método HTTP CONNECT para establecer una tunelización de solicitudes HTTP a través de una sola conexión TCP. (Lo mismo sucede si las variables de entorno para configurar el proxy tienen habilitada la TLS).
Opción 2:
La segunda opción es especificar un proxy y establecer proxy_tunnel en false en el archivo de configuración de la micropuerta de enlace. Por ejemplo:
edge_config: proxy: http://10.224.16.85:3128 proxy_tunnel: false
En este caso, puedes configurar las siguientes variables para controlar los hosts de cada proxy HTTP que desees usar o los hosts que no deben controlar los proxies de la Microgateway de Edge: HTTP_PROXY, HTTPS_PROXY y NO_PROXY. Puedes configurar NO_PROXY como una lista delimitada por comas de dominios a los que la Microgateway de Edge no debe usar proxy. Por ejemplo:
export HTTP_PROXY='http://localhost:3786' export HTTPS_PROXY='https://localhost:3786'
Para obtener más información sobre estas variables, consulta los siguientes recursos:
https://www.npmjs.com/package/request#controlling-proxy-behaviour-using-environment-variables
5. Se estableció un tiempo de espera personalizado para las solicitudes de destino (PR 57).
Puedes establecer un tiempo de espera personalizado para las solicitudes de segmentación con esta configuración:
edgemicro: request_timeout: 10
El tiempo de espera se establece en segundos. Si se produce un tiempo de espera, la Microgateway de Edge responde con un código de estado 504.
6. Respetar los mensajes de estado HTTP personalizados en la respuesta de destino (PR 53)
Edge Microgateway respeta los mensajes de estado HTTP personalizados establecidos en la respuesta de destino. En versiones anteriores, los mensajes de estado que se enviaban desde el destino se anulaban con los valores predeterminados de Node.js.
7. El encabezado X-Forwarded-For puede establecer el cliente_ip para las estadísticas.
Si está presente, el encabezado X-Forwarded-For establecerá la variable client_ip que se informa en Edge Analytics. Esta función te permite conocer la IP del cliente que envió una solicitud a la micropuerta de enlace de Edge.
8. Cambios en el complemento de OAuth
El complemento de OAuth admite la verificación de claves de API y la verificación de tokens de acceso de OAuth. Antes de este cambio, el complemento aceptaba cualquier forma de seguridad. Con este cambio, puedes permitir solo uno de esos modelos de seguridad (y mantener la retrocompatibilidad).
Los complementos de OAuth agregan dos marcas nuevas:
-
allowOAuthOnly: Si se establece como true, cada API debe llevar un encabezado de autorización con un token de acceso del portador.
-
allowAPIKeyOnly: Si se establece en true, cada API debe llevar un encabezado x-api-key (o una ubicación personalizada) con una clave de API.
Puedes establecer estas marcas en el archivo de configuración de Edge Microgateway de la siguiente manera:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false keep-authorization-header: false allowOAuthOnly: false allowAPIKeyOnly: false
9. Se mejoró el proxy de edgemicro-auth (PR 40).
Se realizaron mejoras en el proxy edgemicro-auth. Antes de estos cambios, el proxy almacenaba claves en Edge Secure Store, una bóveda encriptada. Ahora, el proxy almacena claves en el mapa de clave-valor (KVM) encriptado de Edge.
10. Se volvió a escribir la URL de destino predeterminada en un complemento (PR 74).
También puedes anular el puerto del extremo de destino y elegir entre HTTP y HTTPS. Modifica estas variables en el código del complemento: req.targetPort y req.targetSecure. Para elegir HTTPS, establece req.targetSecure en true. Para HTTP, configúralo en false. Si estableces req.targetSecure en "true", consulta esta conversación para obtener más información.
11. Compatibilidad inicial con la autenticación de tokens de OAuth (PR 125)
Puedes configurar la Microgateway de Edge para que use un token de OAuth para la autenticación en lugar de un nombre de usuario o una contraseña. Para usar un token de OAuth, usa el siguiente parámetro en el comando edgemicro configure:
-t, --token <token>
Por ejemplo:
edgemicro configure -o docs -e test -t <your token>
Se corrigieron errores en la versión 2.4.3
- Se corrigió un problema por el que se necesitaba una organización pagada para ejecutar correctamente el proxy de edgemicro-auth. Ahora, también puedes usar Edge Microgateway con organizaciones de prueba. (PR 5)
- Se corrigió un problema en el que la transmisión no terminaba de procesar los datos, pero los controladores de fin se ejecutaban de todos modos. Esto provocó que se enviara una respuesta parcial. (PR 71)
- Se corrigió un problema por el que no se reconocía un directorio de configuración personalizado para las instalaciones de Private Cloud. (PR 110)
- Se solucionó un problema con el SSL bidireccional entre el cliente y la micropuerta de enlace de Edge. (PR 70)
- Se corrigió un problema en el que se necesitaba una barra diagonal al final de la ruta de acceso base del proxy para que la verificación de la clave de API funcionara correctamente. Ahora, no se necesita una barra al final de la ruta de base. (PR 48)
Versión 2.3.5
Nuevas funciones y mejoras de la versión 2.3.5
Filtrado de proxy
Puedes filtrar qué proxies compatibles con microgateway procesará una instancia de Edge Microgateway.
Cuando se inicia Edge Microgateway, descarga todos los proxies compatibles con la micropuerta de enlace en la
organización con la que está asociada. Usa la siguiente configuración para limitar los proxies que procesará la
micropuerta de enlace. Por ejemplo, esta configuración limita los proxies que procesará la micropuerta de enlace a tres: edgemicro_proxy-1
, edgemicro_proxy-2
y edgemicro_proxy-3
:
proxies: - edgemicro_proxy-1 - edgemicro_proxy-2 - edgemicro_proxy-3
Enmascaramiento de datos de Analytics
Una nueva configuración te permite evitar que la información de la ruta de la solicitud aparezca en las estadísticas de Edge. Agrega lo siguiente a la configuración de la micropuerta de enlace para enmascarar el URI o la ruta de acceso de la solicitud. Ten en cuenta que el URI consta de las partes del nombre de host y la ruta de acceso de la solicitud.
analytics: mask_request_uri: 'string_to_mask' mask_request_path: 'string_to_mask'
Versión 2.3.3
Funciones y mejoras nuevas de la versión 2.3.3
A continuación, se muestran las nuevas funciones y mejoras de esta versión.
Cómo inhabilitar el sondeo de cambios automáticos
Para desactivar el sondeo de cambios automático, configura este atributo en la configuración de la micropuerta de enlace:
disabled_config_poll_interval: true
De forma predeterminada, el sondeo periódico detecta cualquier cambio realizado en Edge (cambios en los productos, proxies compatibles con microgateway, etcétera), así como los cambios realizados en el archivo de configuración local. El intervalo de sondeo predeterminado es de 600 segundos (cinco minutos).
Reescritura de URLs de destino en complementos
Para anular la URL de destino predeterminada de forma dinámica en un complemento, modifica estas variables en el código del complemento: req.targetHostname y req.targetPath.
Nueva firma de función de complemento
Se agregó una nueva firma de función del complemento que proporciona la respuesta de destino como un argumento. Esta incorporación facilita que los complementos accedan a la respuesta objetivo.
function(sourceRequest, sourceResponse, targetResponse, data, cb)
Salida de registro predeterminada simplificada
De forma predeterminada, el servicio de registro ahora omite el JSON de los proxies, los productos y los JWT descargados.
Para cambiar a la configuración predeterminada y generar estos objetos, configura DEBUG=*
cuando inicies la
Microgateway de Edge. Por ejemplo:
DEBUG=* edgemicro start -o docs -e test -k abc123 -s xyz456
Se agregó la ruta de acceso de configuración personalizada a la CLI
De forma predeterminada, el archivo de configuración de la micropuerta de enlace se encuentra en ./config/config.yaml. En los comandos init, configure y start, ahora puedes especificar una ruta de configuración personalizada en la línea de comandos. Por ejemplo:
edgemicro start -o docs -e test -k abc123 -s xyz456 -c /home/microgateway/config
Se corrigieron errores en la versión 2.3.3
- Se corrigió una fuga de memoria que se producía durante solicitudes o respuestas grandes.
- Se corrigió el orden de ejecución de los complementos. Ahora se comporta como se explica en la documentación.
- El complemento accumulate-request ya no se bloquea para las solicitudes GET.
- Se corrigió un problema en el complemento accumulate-response por el que la falta de un cuerpo de respuesta causaba errores.
Versión 2.3.1
Nota de instalación
Algunas versiones anteriores de Edge Microgateway te permiten instalar el software descargando un archivo ZIP. Ya no se admiten estos archivos ZIP. Para instalar Edge Microgateway, debes usar lo siguiente:
npm install -g edgemicro
Consulta el tema de instalación para obtener más detalles.
Nuevas funciones y mejoras de la versión 2.3.1
A continuación, se muestran las nuevas funciones y mejoras de esta versión.
Filtra los proxies
Una nueva configuración te permite filtrar los proxies que Edge Microgateway cargará al iniciarse. Anteriormente, la micropuerta de enlace cargaba todos los proxies compatibles con la micropuerta de enlace (proxies con el nombre edgemicro_*) que se extraían de la organización o el entorno de Edge que especificaste en el comando de configuración de edgemicro. Esta nueva función te permite filtrar esta lista de proxies para que Edge Microgateway solo cargue los que especifiques. Simplemente agrega el elemento de proxy al archivo de configuración de la micropuerta de enlace de la siguiente manera:
edge micro: proxies: - edgemicro_[name] - edgemicro_[name] ...
Por ejemplo, supongamos que tienes 50 proxies edgemicro_*
en tu org/env de Edge, incluidos los llamados edgemicro_foo
y edgemicro_bar
. Puedes decirle a la micropuerta de enlace que use solo estos dos proxies de la siguiente manera:
edge micro: proxies: - edgemicro_foo - edgemicro_bar
Al inicio, la micropuerta de enlace solo podrá llamar a los proxies especificados. Cualquier intento de llamar a otros proxies compatibles con microgateways descargados de la organización o el entorno de Edge generará un error.
Establece encabezados de solicitud de destino en los complementos
Existen dos patrones básicos que debes tener en cuenta si deseas agregar o modificar los encabezados de la solicitud de destino: uno en el que la solicitud entrante contiene datos (como en una solicitud POST) y uno en el que no (como en una solicitud GET simple).
Consideremos un caso en el que la solicitud entrante contiene datos y deseas establecer encabezados de solicitud en la solicitud de destino. En versiones anteriores de Edge Microgateway, no era posible establecer encabezados de destino de forma confiable en este caso.
La clave de este patrón es acumular primero todos los datos entrantes del cliente. Luego, en la función onend_request()
, usa la nueva función request.setOverrideHeader(name,
value)
para personalizar los encabezados.
A continuación, se muestra un código de ejemplo del complemento que muestra cómo hacerlo. Los encabezados establecidos en onend_request
se envían al destino:
module.exports.init = function(config, logger, stats) { function accumulate(req, data) { if (!req._chunks) req._chunks = []; req._chunks.push(data); } return { ondata_request: function(req, res, data, next) { if (data && data.length > 0) accumulate(req, data); next(null, null); }, onend_request: function(req, res, data, next) { if (data && data.length > 0) accumulate(req, data); var content = Buffer.concat(req._chunks); delete req._chunks; req.setOverrideHeader('foo', 'bar'); req.setOverrideHeader('content-length', content.length); next(null, content); }, onerror_request: function(req, res, data, next) { next(null, null); } }; }
Si la solicitud no incluye datos, puedes establecer encabezados de destino en el controlador onrequest()
. Este patrón no es nuevo, ya que se documentó anteriormente
y se usó en los complementos de muestra proporcionados con Edge Microgateway.
onrequest: function(req, res, next) { debug('plugin onrequest'); req.headers['x-foo-request-id'] = "bar"; req.headers['x-foo-request-start'] = Date.now(); next(); }
Función de recarga sin tiempo de inactividad
Después de realizar un cambio de configuración en la Microgateway de Edge, puedes cargar la configuración
sin perder ningún mensaje. Con este cambio, la Microgateway de Edge siempre se inicia en modo de clúster, y se quitó la opción --cluster
del comando edgemicro start
.
Además, se agregaron tres comandos nuevos de la CLI. Debes ejecutar estos comandos desde el mismo directorio en el que se ejecutó el comando de inicio de edgemicro:
edgemicro status
: Verifica si Edge Microgateway está en ejecución o no.edgemicro stop
: Detiene el clúster de Edge Microgateway.edgemicro reload
: Vuelve a cargar la configuración de Edge Microgateway sin tiempo de inactividad.
Actualización automática de la configuración sin tiempo de inactividad
La Microgateway de Edge carga una configuración nueva periódicamente y ejecuta una recarga si hay algún cambio. El sondeo detecta cualquier cambio realizado en Edge (cambios en los productos, proxies compatibles con microgateway, etc.), así como los cambios realizados en el archivo de configuración local. El intervalo de sondeo predeterminado es de 600 segundos (cinco minutos). Puedes cambiar el valor predeterminado en el archivo de configuración de la micropuerta de enlace de la siguiente manera:
edgemicro: config_change_poll_interval: [seconds]
Se agregó información de la versión a la CLI
Se agregó una marca --version
a la CLI. Para obtener la versión actual de Edge
Microgateway, usa lo siguiente:
edgemicro --version
Nuevas opciones de SSL del servidor de Edge Microgateway
Edge Microgateway ahora admite las siguientes opciones de SSL de servidor, además de key
y cert
:
Opción | Descripción |
---|---|
pfx |
Es la ruta de acceso a un archivo pfx que contiene la clave privada, el certificado y los certificados de AC del cliente en formato PFX. |
passphrase |
Es una cadena que contiene la frase de contraseña de la clave privada o el PFX. |
ca |
Es la ruta de acceso a un archivo que contiene una lista de certificados de confianza en formato PEM. |
ciphers |
Es una cadena que describe los algoritmos de cifrado que se usarán separados por un ":". |
rejectUnauthorized |
Si es verdadero, el certificado del servidor se verifica en función de la lista de AC proporcionadas. Si la verificación falla, se muestra un error. |
secureProtocol |
El método SSL que se usará. Por ejemplo, SSLv3_method para forzar SSL a la versión 3. |
servername |
Es el nombre del servidor de la extensión TLS SNI (indicación de nombre de servidor). |
Envía archivos de registro a stdout
Puedes enviar datos de registro a la salida estándar con un nuevo parámetro de configuración:
edgemicro: logging: to_console: true
Consulta Cómo administrar archivos de registro.
Versión 2.1.2
A continuación, se muestran las nuevas funciones y mejoras de esta versión.
Permite un extremo de API personalizado para la configuración
Hay nuevos extremos configurables para el proxy de autorización que admiten el uso de un servicio de autenticación personalizado. Estos extremos son los siguientes:
edgeconfig:verify_api_key_url
edgeconfig:products
Para obtener más información, consulta Cómo usar un servicio de autenticación personalizado.
Versión 2.1.1
A continuación, se muestran las nuevas funciones y mejoras de esta versión.
Implementa un proxy de autenticación compatible con varias plataformas
Se realizó una mejora para que el comando que se usa para implementar el proxy de autorización de Edge Microgateway en Edge sea compatible con los sistemas Windows.
Versión 2.1.0
Funciones y mejoras nuevas de la versión 21.0
A continuación, se incluyen las nuevas funciones y mejoras:
Especifica las opciones de SSL/TLS del cliente
Puedes especificar opciones de cliente para conexiones SSL/TSL a destinos con un nuevo conjunto de opciones de configuración. Consulta Cómo usar las opciones de SSL/TSL del cliente.
Versión 2.0.11
Nota de instalación v2.0.11
Algunas versiones anteriores de Edge Microgateway te permiten instalar el software descargando un archivo ZIP. Ya no se admiten estos archivos ZIP. Para instalar Edge Microgateway, debes usar lo siguiente:
npm install -g edgemicro
Consulta el tema de instalación para obtener más detalles.
Nuevas funciones y mejoras de la versión 2.0.11
A continuación, se incluyen las nuevas funciones y mejoras:
Especifica un puerto al inicio
El comando start te permite especificar un número de puerto para anular el puerto especificado en el archivo de configuración. También puedes especificar un número de puerto con la variable de entorno PORT. Consulta el comando start para obtener más información.
Cómo conservar los encabezados de autenticación de forma opcional
Un nuevo parámetro de configuración, keepAuthHeader, te permite conservar el encabezado de autorización que se envía en la solicitud. Si se establece como verdadero, el encabezado de Auth se pasa al objetivo. Consulta Atributos de OAuth.
Capacidad de usar un servicio de autorización personalizado
Si deseas usar tu propio servicio personalizado para controlar la autenticación, cambia el valor de authUri en el archivo de configuración de la micropuerta de enlace de Edge para que apunte a tu servicio. Para obtener más información, consulta Cómo usar un servicio de autenticación personalizado.
Versión 2.0.4
La versión 2.0.4 de Edge Microgateway se lanzó el 25 de mayo de 2016.
Nuevas funciones y mejoras de la versión 2.0.4
A continuación, presentamos las nuevas funciones y mejoras de esta versión.
Compatibilidad con rutas de recursos en productos
Edge Microgateway ahora admite rutas de recursos en los productos. Las rutas de recursos te permiten restringir el acceso a las APIs según el sufijo de la ruta del proxy. Para obtener más información sobre cómo crear productos y configurar rutas de recursos, consulta Crea productos de API.
Compatibilidad con la instalación global de npm
Ahora puedes instalar Edge Microgateway con la opción npm -g (global). Para obtener detalles sobre esta opción, consulta la documentación de npm.
Versión 2.0.0
La versión 2.0.0 de Edge Microgateway se lanzó el 18 de abril de 2016.
Nuevas funciones y mejoras de la versión 2.0.0
A continuación, presentamos las nuevas funciones y mejoras de esta versión.
Servidor de un solo proceso
Edge Microgateway ahora es un servidor de un solo proceso. Ya no usa un modelo de dos procesos en el que un proceso (antes conocido como "agente") inicia Edge Microgateway, el segundo proceso. La nueva arquitectura facilita la automatización y la creación de contenedores.
Archivos de configuración con espacio de nombres
Los archivos de configuración ahora tienen espacio de nombres con organización y entorno para que varias instancias de Microgateway se puedan ejecutar en el mismo host. Puedes encontrar los archivos de configuración en ~/.edgemicro después de ejecutar el comando de configuración de Edge Microgateway.
Nuevas variables de entorno
Ahora hay 4 variables de entorno: EDGEMICRO_ORG, EDGEMICRO_ENV, EDGEMICRO_KEY y EDGEMICRO_SECRET. Si configuras estas variables en tu sistema, no tienes que especificar sus valores cuando usas la interfaz de línea de comandos (CLI) para configurar y, luego, iniciar la Microgateway de Edge.
Configuración almacenada en caché
Edge Microgateway usa un archivo de configuración almacenado en caché si se reinicia sin una conexión a Apigee Edge.
Modo de clúster
Ahora hay opciones para iniciar Edge Microgateway en modo de clúster. El modo de clúster te permite aprovechar los sistemas multinúcleo. La micropuerta de enlace emplea el módulo de clúster de Node.js para esta función. Para obtener más información, consulta la documentación de Node.js.
Se corrigieron errores en la versión 2.0.0
El ciclo de vida del evento del complemento ahora controla correctamente el código asíncrono que contiene código con una devolución de llamada nueva.
Versión 1.1.2
La versión 1.1.2 de Edge Microgateway se lanzó el 14 de marzo de 2016.
Nuevas funciones y mejoras de la versión 1.1.2
A continuación, presentamos las nuevas funciones y mejoras de esta versión.
Mejora del rendimiento
La Microgateway de Edge ahora usa el agente HTTP de Node.js correctamente para mejorar el grupo de conexiones. Esta mejora mejora el rendimiento y la estabilidad general con cargas altas.
Compatibilidad con el depurador remoto
Puedes configurar Edge Microgateway para que se ejecute con un depurador remoto, como node-inspector.
Nueva ubicación del archivo de configuración
Cuando configuras Edge Microgateway, el archivo agent/config/default.yaml
ahora se copia en ~./edgemicro/config.yaml
.
Rotación de archivos de registro
Un nuevo atributo de configuración te permite especificar un intervalo de rotación para los registros de la puerta de enlace de microservicios de Edge.
Se corrigieron errores en la versión 1.1.2
En la versión 1.1.2, se corrigieron los siguientes errores:
Descripción |
---|
La llamada a texto de Java para el proxy interno de edgemicro que se usa con Edge local ahora usa el servidor de MGMT correcto. |
Se quitaron las dependencias de typescript del agente. |
Se corrigió el error de la CLI cuando se usaba la opción de implementación optimizada. |
Se corrigió la referencia de dependencia de la lógica de la certificación. |