Estás viendo la documentación de Apigee Edge.
Ir a la documentación de
Apigee X. info
En las siguientes fechas, comenzamos a lanzar actualizaciones de componentes para Apigee Edge para la nube pública:
- Procesador de mensajes: viernes, 1 de mayo de 2020
- Administración de APIs: Lunes, 20 de abril de 2020
- Administración de la monetización: lunes, 20 de abril de 2020
- Lanzamiento de parche de API Management: lunes, 22 de junio de 2020
- Lanzamiento de parche de administración de la monetización: lunes, 6 de julio de 2020
- Actualización de seguridad del servidor de administración: lunes, 24 de agosto de 2020
- Lanzamiento de parches del Message Processor con correcciones de errores: jueves, 24 de septiembre de 2020
- Lanzamiento de parche del procesador de mensajes con correcciones de errores: lunes, 26 de octubre de 2020
- Lanzamiento de parche de Message Processor con correcciones de errores: lunes, 1 de febrero de 2021
Nuevas funciones y actualizaciones
A continuación, presentamos las nuevas funciones y actualizaciones de esta versión.
Políticas de JWT
-
Encriptación de JWT
Las políticas de JWT te permiten generar, verificar y decodificar tokens encriptados. Los elementos nuevos en las políticas incluyen lo siguiente:
<Type>: Te permite establecer si los tokens están firmados o encriptados.<EncryptionAlgorithms>: Te permite establecer los algoritmos de encriptación<Key>y<Content>.
(67165581)
Compatibilidad con algoritmos PSS en tokens firmados
Las políticas para generar y verificar JWT y JWS ahora admiten los algoritmos PS256, PS384 y PS512, como se describe en IETF RFC 7518. (119856499)
Hora de inicio relativa de GenerateJWT para el token
Cuando generas un JWT con la política de GenerateJWT, el elemento
<NotBefore>te permite especificar un tiempo relativo entre el momento en que se genera un token y el momento en que se vuelve válido. Por ejemplo, un valor de<NotBefore>de 2 h significa que un token no es válido hasta 2 horas después de que se genera. Puedes configurar el tiempo de<NotBefore>en milisegundos (ms), segundos (s), minutos (m), horas (h), días (d) o semanas (w). (126261970)-
Cómo hacer referencia a PublicKey/Certificate en VerifyJWT
En la política VerifyJWT, un elemento
<PublicKey>/<Certificate>te permite hacer referencia al certificado con formato PEM con el que se verificarán las firmas de los JWT entrantes. Por ejemplo:<PublicKey> <Certificate ref='public.certificate_pem'/> </PublicKey>
(132918033)
Funciones de plantillas de mensajes
A continuación, se indican las nuevas funciones de plantillas de mensajes disponibles en esta versión:
- firstnonull: Muestra el valor del primer argumento (el más a la izquierda) que no es nulo. (139698514)
- xpath: Te permite aplicar una expresión de ruta XML (XPath) para analizar variables XML. (123246424)
Política AssignMessage: AssignVariable te permite hacer referencia a una plantilla de mensajes
En la política de AssignMessage, el elemento <AssignVariable> / <Template> permite un atributo ref, lo que te permite incorporar una plantilla predefinida en el tiempo de ejecución que puede cambiar sin tener que modificar la política. (118396082)
Varios alias de certificado
Cuando
configuras TLS y usas varios certificados en un almacén de claves, cada uno con un alias diferente, Edge te permite hacer referencia a alias de certificados específicos en tu configuración de <SSLInfo><KeyAlias>. Para habilitar este comportamiento actualizado, establece una nueva propiedad HTTPClient.choose.alias.by.keyalias en true en el archivo http.properties de los procesadores de mensajes. Los usuarios de Edge para la nube pública deben comunicarse con el
equipo de asistencia para agregar esta propiedad. (142141620)
Política JSONtoXML: Omitir la declaración XML, aplicar sangría al resultado
Dos nuevas opciones booleanas en la política de JSONtoXML te brindan más control sobre la salida XML.
<Options> <OmitXmlDeclaration>: Cuando se establece en verdadero (el valor predeterminado es falso), el elemento<OmitXmlDeclaration>omite la declaración XML<?xml version="1.0" encoding="UTF-8"?>predeterminada que genera la política.<Options> <Indent>: Cuando se establece en verdadero (el valor predeterminado es falso), el elemento<Indent>aplica sangría al resultado XML. Por ejemplo, en lugar de este resultado:<Array><n>1</n><n>2</n><n>3</n></Array>
El elemento Indent produce lo siguiente:
<Array> <n>1</n> <n>2</n> <n>3</n> </Array>
(65142394)
Respuestas para el análisis de hosts virtuales
Si se realizó una solicitud a la dirección IP de un extremo de Apigee (no se especificó ningún host virtual), Edge devolvió una respuesta HTTP 200 y un documento HTML en blanco del host virtual predeterminado de Apigee asociado a esa dirección IP. Para evitar la impresión incorrecta de que tal respuesta podría representar una vulnerabilidad potencial que se podría explotar, se interrumpe la conexión y no se devuelve ninguna respuesta. (140005396)
Propiedades del servidor de destino en Trace para ayudar a solucionar problemas
Las siguientes propiedades de seguimiento nuevas ayudan a solucionar problemas de conexión de destino, ya que muestran si se almacenó en caché el objeto HTTPClient para el servidor de destino: isHttpClientCached y isFromClientPool. (140574604)
Política MessageLogging: Mensaje de Syslog
En la política de MessageLogging, un nuevo elemento
<Syslog> / <PayloadOnly>
(booleano) te permite determinar si se antepone automáticamente algo
al <Message> que defines. Si configuras <PayloadOnly> como verdadero, no se antepone nada a la definición del mensaje (independientemente de la configuración de <FormatMessage>). Si se configura como falso (predeterminado), el parámetro de configuración <FormatMessage> determina qué se antepone al mensaje de registro. (68722102)
Vencimiento de las políticas de caché
Un nuevo elemento de vencimiento <TimeoutInSeconds> en la política ResponseCache y la política PopulateCache se comporta de la manera en que se pretendía que funcionara el elemento <TimeoutInSecs> existente originalmente. Usa el elemento nuevo.
El elemento <TimeoutInSecs> obsoleto
aún existe para la retrocompatibilidad. Si se configuran los elementos
<TimeoutInSecs> y <TimeoutInSeconds>, Edge usa <TimeoutInSeconds>. (119172893)
Variable de flujo virtualhost.aliases.values
Una nueva variable de flujo de mensajes virtualhost.aliases.values de solo lectura devuelve un array con formato JSON de todos los alias asignados al host virtual al que se llamó en la solicitud entrante. (128453178)
Nuevo parámetro para garantizar el borrado de la revisión del proxy
Se agregó un nuevo parámetro de búsqueda force a la revisión de proxy de API de eliminación.
En los casos en que la revisión aparece en la API de List API Proxies, pero no se puede consultar, este parámetro garantiza que se borre la revisión del proxy. (111691721)
Por ejemplo:
DELETE /v1/organizations/myorg/apis/myproxy/revisions/2?force=true
Nueva variable de flujo para los valores de alias de host virtual
Una nueva variable de flujo de mensajes virtualhost.aliases.values de solo lectura devuelve un array con formato JSON de todos los alias asignados al host virtual al que se llamó en la solicitud entrante. (128453178)
Fallas corregidas
En esta versión, se corrigieron los siguientes errores. Esta lista está dirigida principalmente a usuarios que verifican si sus tickets de asistencia se corrigieron. No está diseñada para proporcionar información detallada a todos los usuarios.
| ID del problema | Nombre del componente | Descripción |
|---|---|---|
| 143313772 | Message Processor |
Se corrigió un problema en la política de SpikeArrest que se producía cuando se habilitaba (En la versión del parche del 1/2/21) |
| 154428338 | Entorno de ejecución de API |
El Message Processor no puede cargar entornos cuando los almacenes de claves se configuran con nombres o alias similares. Se corrigió un conflicto de búsqueda de regex al cargar almacenes de claves que tienen una convención de nombres similar. Esto provocaba que el Message Processor no pudiera cargar los entornos asociados al almacén de claves o no pudiera iniciarse cuando se devolvían varios almacenes de claves en conflicto durante la búsqueda. |
| 149507805 | Administración de API |
Habilita la implementación o configuración a través de HTTP para todos los servidores de MGMT de producción Las actualizaciones de configuración se realizan a través de HTTP en lugar de RPC, lo que mejora la confiabilidad y el registro de errores. |
| 137217974 | Administración de API |
Cuando se configuran los MPs a través de HTTP, se propaga el error correctamente cuando aún se usa un servidor de destino Como resultado de las mejoras de confiabilidad introducidas en el problema 149507805, los errores de respuesta por la eliminación del servidor de destino se informaron incorrectamente como estado 200 (correcto) cuando la eliminación falló. Con esta corrección, los errores de respuesta ahora se informan correctamente como estado 400 si falla la eliminación. Ten en cuenta que la eliminación del servidor de destino puede fallar si un proxy implementado actualmente hace referencia a él. Antes de borrar un servidor de destino, verifica que ningún proxy de API implementado actualmente haga referencia a él. |
| 69765558 | Administración de API |
La API de Resource Permissions devuelve el código 403 |
| 149545506 | Administración de API |
Se corrigió un problema de seguridad en la API para agregar un usuario a un rol. |
| 131246911 | Administración de API |
Para los correos electrónicos de desarrolladores en un portal, habilita la compatibilidad con dominios más nuevos, como *.games y *.asia
Se corrigió un problema por el que algunos nombres de dominio, como |
| 142217645 | Administración de API |
PUT v1/o/{org_name}/apiproducts/{product_name} no quita las cuotas |
| 162299668 | Servidor de administración |
Se corrigió una posible vulnerabilidad de seguridad. |
| 135856488 | Servidor de administración |
Lentitud de la IU |
| 139407965 | Servidor de administración |
Se corrigió un problema que permitía crear un KVM sin nombre. |
| 112488235 | Servidor de administración |
Se agregó validación para evitar que se creen hosts virtuales con espacios en el nombre. Los caracteres de espacio no son válidos para usarse en nombres de host virtuales. |
| 132433193 | Administración de la monetización |
Se corrigió un problema con la actualización de la aplicación. |
| 152514520 | Administración de la monetización |
Se corrigió un problema con las llamadas a la API de administración para borrar entidades. |
| 128450374 | Entorno de ejecución de API |
Las políticas de JWT/JWS deben respetar IgnoreUnresolvedVariables y arrojar la falla adecuada si no se define la variable |
| 135354517 | Entorno de ejecución de API |
La organización falla en Release_190301 debido a la aplicación estricta del tipo de datos "String" en BasicAuth |
| 131763486 | Entorno de ejecución de API |
Se debe ignorar la ruta base de un flujo compartido en el procesador de mensajes |
| 135972575 | Entorno de ejecución de API |
Private Cloud 4.19.01 muestra un comportamiento diferente durante la implementación con override=true&delay=300 Esta corrección se incluirá en una versión futura de Edge para la nube privada. |
| 141601836 | Entorno de ejecución de API |
Corrige el nombre de host en el mensaje de registro |
| 116834109 | Entorno de ejecución de API |
Valores incorrectos para las variables failed, fault.cause y fault.name en Trace |
| 130653816 | Entorno de ejecución de API |
Errores 404 intermitentes en el tráfico del tiempo de ejecución |
| 132777537 | Entorno de ejecución de API |
La política ExtractVariables falla para un JSONPath válido |
| 133713555 | Entorno de ejecución de API |
El router perimetral altera el encabezado de fecha |
| 133253435 | Entorno de ejecución de API |
Uso alto de CPU por el subproceso Apigee-Main |
| 111553402 | Entorno de ejecución de API |
Un producto de API con caracteres no válidos en la ruta no se detecta hasta el tiempo de ejecución |
| 126240341 | Entorno de ejecución de API |
Mejora el mensaje genérico "No se pudo generar" en caso de falla de la política de GenerateJWT |
| 119854424 | Entorno de ejecución de API |
El LoadBalancer con un solo servidor de destino no debe quedar inactivo si falla la conexión |
| 129275412 | Entorno de ejecución de API |
Agrega encabezados HTTP al host virtual de respaldo para los análisis de IP genéricos |
| 129351507 | Entorno de ejecución de API |
La política BasicAuthentication no puede decodificar cuando la contraseña contiene dos puntos |
| 65852874 | Entorno de ejecución de API |
Asegúrate de que HTTPClient no intente reutilizar una conexión que tenía un encabezado de respuesta Connection:close |
| 138951646 | Entorno de ejecución de API |
El límite de tiempo no funciona en JavaScript para |
| 139051927 | Entorno de ejecución de API |
Alta latencia de procesamiento de solicitudes |
| 132443137 | Entorno de ejecución de API |
Se cambió el comportamiento del procesador de mensajes para controlar encabezados x-apigee internos desconocidos |
| 138310777 | Entorno de ejecución de API |
La llamada de implementación de flujo compartido devuelve 504 de forma aleatoria |
| 67170148 | Entorno de ejecución de API |
Diferencias entre Elapsed Time y timeTaken en ServiceCallouts |
| 124049692 | Entorno de ejecución de API |
NullPointerException en la política VerifyApiKey |
| 135031506 | Entorno de ejecución de API |
Agrega un mensaje de registro para el formato de clave JWT inesperado |
| 137312366 | Entorno de ejecución de API |
Validación de contenido por encabezado Content-Type |
| 109871907 | Entorno de ejecución de API |
Demoras en la ejecución de ServiceCallout sin elemento Response |
| 143722867 | Entorno de ejecución de API |
El JWT debe aplicar un límite configurable en la cantidad de iteraciones para PBKDF2 |
| 144286363 | Registro híbrido |
La máscara de depuración en env.json no enmascara los datos de respuesta en Apigee Hybrid |
| 147769812 | Entorno de ejecución de API |
Declara las propiedades de hash de OAuth como mutables en las marcas de funciones |
| 149037704 | Entorno de ejecución de API |
Se corrigió un problema por el que el valor asignado a la variable de flujo |
| 148972262 | Entorno de ejecución de API |
DecodeJWS emite la carga útil a una variable de contexto en una forma inútil |
| 116580622 | Entorno de ejecución de API |
Respuesta incongruente |
| 149739904 | Entorno de ejecución de API |
El enmascaramiento de datos para los encabezados HTTP no debe distinguir mayúsculas de minúsculas |
| 149431545 | Entorno de ejecución de API |
GenerateJWT y VerifyJWT con SecretKey no aceptan ninguna codificación, excepto UTF-8 |
| 155448596 | API Management-Patch |
Faltan permisos en el rol predeterminado de apimonitoringadmin Se agregaron los permisos faltantes al rol de apimonitoringadmin. |
| 158592076 | API Management-Patch |
Faltan permisos en el rol predeterminado de devadmin Se agregaron permisos faltantes al rol de devadmin. |
| 152856311 | API Management-Patch |
Validaciones para rechazar certificados PKCS7 y DER en el almacén de claves y el almacén de certificados de confianza durante la creación y actualización del host virtual Durante la creación o actualización del host virtual, se aplican validaciones para verificar si los certificados agregados en el alias del almacén de claves y el almacén de certificados de confianza están en formato PEM y no en formatos incompatibles, como PKCS7, DER, etcétera. |
| 155478545 | Monetization Management-Patch |
Se corrigió un problema con las actualizaciones de estado de las notificaciones por correo electrónico. |
| 154121499 | Monetization Management-Patch |
Se corrigió un problema en el que la API de |
| 152356393 | Monetization Management-Patch |
Se relajó la validación de la longitud del nombre de la empresa para la creación de empresas de monetización. |
| 138542921 | Monetization Management-Patch |
Se corrigió un problema por el que fallaba la creación de un plan de tarifas con varios atributos personalizados en el paquete de productos. |
| 150948843 | Monetization Management-Patch |
Se corrigió un problema por el que la API de Monetization |
| 155443118 | Monetization Management-Patch |
Se quitó el campo |
| 150948843 | Monetization Management-Patch |
Se corrigió un problema por el que la API de Monetization |