4.15.07.00: Notas de la versión de Apigee Edge para la nube privada

Estás viendo la documentación de Apigee Edge.
Ir a la documentación de Apigee X.
info

El martes 8 de septiembre de 2015, lanzamos una versión de funciones importante de Apigee Edge para la nube privada.

Desde la versión trimestral anterior de Edge para la Nube privada (4.15.04.00), se lanzaron las siguientes versiones, que se incluyen en esta versión trimestral:

A qué versiones de Edge puedes actualizar 4.15.07.00

Según la versión actual de Edge, puedes hacer lo siguiente:

  • Actualiza directamente a la versión 4.15.07.00
  • Actualiza de forma incremental, lo que significa que debes actualizar de tu versión actual a otra versión de Edge y, luego, actualizar a la versión 4.15.07.00.

Para obtener más información, consulta A qué versiones de Edge para la nube privada puedes actualizarte a la versión 4.15.07.00.

Antes de actualizar desde la versión 4.15.01.x o una versión anterior

Antes de actualizar, asegúrate de haber actualizado la SSTable de Cassandra en cada nodo de Cassandra:
  1. Verifica la versión de SSTable de Cassandra:
    1. Cambia el directorio a /<install-root>/apigee4/data/cassandra/data.
    2. Ejecuta un comando de búsqueda,
      > find . -name *-ic-*
      Los resultados deben devolver un conjunto de archivos .db si ejecutas SSTable de Cassandra 1.2.
    3. Ejecuta este comando de búsqueda:
      > find . -name *-hf-*
      Los resultados deben estar vacíos, lo que significa que no hay archivos .db en el formato hf. Si no ves ningún archivo en formato hf, terminaste y puedes actualizar a la versión 4.15.07.00.

      El formato hf es para las SSTables de Cassandra 1.0. Si tienes archivos *.db en formato hf, debes actualizar la SSTable como se describe en el resto de este procedimiento.
  2. Si encuentras archivos *.db en formato hf, actualiza SSTable ejecutando el siguiente comando en cada nodo de Cassandra hasta que hayas actualizado todos los nodos de Cassandra:
    > /<install-root>/apigee4/share/apache-cassandra/bin/nodetool -h localhost upgradesstables -a
  3. Repite el paso 1 para verificar que todos los archivos *.db estén en formato ic para la versión 1.2 de Cassandra.
  4. Repite los pasos del 1 al 3 en cada nodo de Cassandra de tu instalación de Edge.
  5. Actualiza a Edge 4.15.07.00.
  6. Después de la actualización a la versión 4.15.07.00, verifica los archivos *.db para asegurarte de que se hayan actualizado todos a la tabla estática ordenada (SSTable) de C* 2.0:
    > cd /<install-root>/apigee4/data/cassandra/data
    > find . -name *-jb-*

    Este comando debería devolver un conjunto de archivos .db si ejecutas Cassandra 2.0.

Nuevas funciones y mejoras

A continuación, se indican las nuevas funciones y mejoras de esta versión.

Instalación y actualización

Actualización y desinstalación selectivas de componentes

Los scripts apigee-upgrade.sh y apigee-uninstall.sh ahora te permiten seleccionar los componentes de Edge que deseas actualizar o desinstalar. Antes, actualizaba o desinstalaba todos los componentes del nodo. (OPDK-1377, OPDK-1175)

Reversión de la actualización

Si apigee-upgrade.sh falla durante una actualización, ahora puedes usar la secuencia de comandos apigee-rollback.sh para revertir la actualización. Después de corregir los problemas de actualización, puedes volver a intentarla. (OPDK-1275)

Opciones abreviadas de la secuencia de comandos del instalador

Las secuencias de comandos de instalación ya no aceptan la forma larga de las opciones, como --help. Ahora solo aceptan opciones de una sola letra, como -h. (OPDK-1356)

Instalación de SmartDocs

Cuando instalas SmartDocs con la secuencia de comandos setup-smartdocs.sh, se te solicita que ingreses la organización, el entorno y el host virtual, lo que garantiza que SmartDocs se instale en la ubicación esperada. Anteriormente, esos valores estaban codificados en la secuencia de comandos. (OPDK-1310)

Ejecuta update-cass-pwd-in-config.sh sin mensajes

La secuencia de comandos update-cass-pwd-in-config.sh se puede ejecutar sin mensajes si configuras las variables de entorno ENABLE_CASS_AUTH, CASS_USERNAME y CASS_PASSWORD. (OPDK-1309)

Plataforma Edge

A continuación, se indican las nuevas funciones de la plataforma de Edge que se incluyen en esta versión.

OpenJDK 1.7 compatible con la nube privada de Edge

Esta versión de Edge admite Oracle JDK 1.7 y OpenJDK 7, y se quitó la compatibilidad con JDK 1.6. (OPDK-1187)

Compatibilidad con SO

Apigee Edge para la nube privada expandió su compatibilidad con sistemas operativos para incluir Red Hat Enterprise Linux 6.6 y 7.0 (64 bits), CentOS 6.5, 6.6 y 7.0 (64 bits) y Oracle Linux 6.5.

Cassandra 2.0.15 incluido en OPDK 15.07

En esta versión, se instala Cassandra 2.0.15. Si actualizas desde una versión anterior, se actualizará tu versión de Cassandra. (OPDK-1197)

Compatibilidad con SHA2 para el hash de tokens de OAuth

Para proteger mejor los tokens de OAuth en caso de una violación de la seguridad en la base de datos, Edge admite algoritmos SHA2 para generar hashes de tokens de OAuth (además de SHA1). Con las nuevas propiedades a nivel de la organización, puedes habilitar y configurar el hash para los tokens nuevos, así como conservar el hash heredado en los tokens que existían antes de esta nueva función. Anteriormente, en Edge para la nube privada, una propiedad llamada hash.oauth.tokens.enabled en el archivo keymanagement.properties (en tu servidor de administración y procesadores de mensajes) habilitaba el hash SHA1 automático de los tokens de OAuth. Esta propiedad ya no está disponible.

Si anteriormente usaste la propiedad hash.oauth.tokens.enabled para habilitar el hash SHA1, la secuencia de comandos de actualización para esta versión generará automáticamente las nuevas propiedades a nivel de la organización. Para verificar después de la actualización, realiza una solicitud GET como administrador del sistema con esta API: https://{host}:{port}/v1/o/{your_org}.

  • Para obtener información sobre cómo habilitar el hash de tokens en tu organización con las nuevas propiedades, consulta "Hashing Tokens in the database" en el tema Solicita tokens de acceso.
  • Para obtener información sobre el hashing masivo de tokens existentes, consulta la Guía de operaciones de Edge para Private Cloud. (APIRT-1389)

Estructura de directorio plana para los archivos de registro

Puedes configurar Edge para que almacene archivos de registro en una estructura de directorio plana. Para ello, establece una nueva propiedad enable.flat.directory.structure como verdadera en el archivo message-logging.properties. Para obtener más información, consulta la política de registro de mensajes. (APIRT-1394)

Rendimiento de la caché del entorno

Para mejorar la administración y el uso de la caché en la memoria, se dejaron de usar los parámetros de configuración "Maximum Elements in Memory" de los recursos de caché del entorno. La cantidad total de elementos presentes en todos los recursos de caché (incluida la caché predeterminada) depende de la memoria total asignada a la caché. De forma predeterminada, la memoria total asignada para el almacenamiento en caché en memoria en un procesador de mensajes determinado es el 40% de la memoria total disponible, según la configuración de las propiedades de caché en el archivo cache.properties del procesador de mensajes. Los elementos se expulsarán de la caché en memoria solo cuando no haya suficiente memoria caché o cuando venzan los elementos.

Para volver al comportamiento anterior de usar la propiedad "Maximum Elements in Memory" para la administración de caché, configura la propiedad overrideMaxElementsInCacheResource=false en el archivo cache.properties. (APIRT-1140)


Servicios de APIs

A continuación, se indican las nuevas funciones de los Servicios de APIs incluidas en esta versión.

El nuevo Editor de proxy como opción predeterminada

El nuevo editor de proxies de API está habilitado de forma predeterminada en la IU de administración. El nuevo editor incluye muchas mejoras en la usabilidad, como vistas más completas de los flujos condicionales y los extremos en la página de descripción general, toda la configuración en la página de desarrollo, una adición más intuitiva de flujos condicionales, extremos y políticas, vistas XML más completas en lugar de fragmentos pequeños, búsqueda que rastrea nombres de archivos y texto, y mucho más. (MGMT-2279)

Nueva política de Delete OAuth v2.0 Info

Una nueva política "Borrar información de OAuth v2.0" te permite borrar tokens de acceso y códigos de autorización de OAuth v2. La política reemplaza la funcionalidad que proporcionaba anteriormente la API de administración. Para obtener más información, consulta la política de Delete OAuthV2 Info. (MGMT-2257)

Nueva política de Delete OAuth v1.0 Info

Una nueva política "Borrar información de OAuth 1.0" te permite borrar tokens de solicitud, tokens de acceso y códigos de verificación de OAuth 1.0. La política reemplaza la funcionalidad que proporcionaba anteriormente la API de administración. Para obtener más información, consulta la política de Delete OAuth V1 Info. (APIRT-1351)

Política de Control de Acceso

Se mejoró la política de Control de acceso para permitir una evaluación más detallada de las direcciones IP en las listas de entidades permitidas y bloqueadas cuando las direcciones IP se incluyen en el encabezado HTTP X-FORWARDED-FOR.

Con la verificación de varias direcciones IP habilitada en el encabezado (comunícate con el equipo de asistencia al cliente para configurar la función feature.enableMultipleXForwardCheckForACL), un nuevo elemento <ValidateBasedOn> en la política te permite verificar la primera IP, la última IP o todas las IPs en el encabezado. Para obtener más información, consulta la política de Control de acceso.

Nuevas entidades en la política de acceso a entidades

La política de Access Entity proporciona acceso a las siguientes entidades nuevas: consumerkey-scopes, authorizationcode, requesttoken y verifier. Para obtener más información, consulta la política de AccessEntity.

Política de Statistics Collector: Conversión automática del nombre de las estadísticas a minúsculas

Cuando crees una recopilación de estadísticas personalizada en el editor de proxy de API (página Develop > Tools > Custom Analytics Collection), el "Nombre" de la variable de recopilador (estadística) debe estar en minúsculas. Si ingresas el nombre con letras mayúsculas, la herramienta convierte automáticamente el nombre de la estadística a minúsculas en la política de Statistics Collector. (MGMT-740)

Se quitó el registro clásico en el editor de proxy de API

La versión más reciente de la función Trace en el editor de proxy de API pasó de la versión beta a la disponibilidad general. Ya no está disponible el acceso al "registro clásico" con el vínculo "Accede a la versión clásica del registro".

Acceso a la comunidad de Apigee desde el menú Ayuda de la IU de administración

Puedes acceder a la Comunidad de Apigee desde el menú Ayuda de la IU de administración.

Mensajes de error en la IU de administración

A continuación, se indican las mejoras en los mensajes de error de la IU de administración:

  • Es la IU de administración que se usa para agrupar y mostrar todos los mensajes de error en la IU durante toda la sesión de acceso, a menos que los hayas descartado. Con esta actualización, los mensajes de error se borran automáticamente cuando abandonas la página en la que se produjeron. (MGMT-2254)
  • La IU de administración ya no suprime los mensajes de error duplicados. (MGMT-2242)

Mejoras en el rendimiento y los errores de la IU

Se realizaron mejoras generales en diferentes áreas de la IU de administración, incluido el rendimiento de la visualización de páginas y la limpieza de los mensajes de error.

En la página Usuarios de la organización de la IU de administración (Administrador > Usuarios de la organización), los nombres de los roles ahora tienen hipervínculos, lo que te permite navegar rápidamente a las páginas de los roles. (MGMT-1055)

Nuevas variables de segmentación en el flujo de mensajes

Las nuevas variables en los flujos de mensajes proporcionan información más completa de la URL para los extremos y servidores de destino:

  • TargetEndpoint: request.url reemplaza a target.basepath.with.query.
  • TargetServer: loadbalancing.targetserver reemplaza a targetserver.name. Además, target.basepath solo se propaga cuando se usa el elemento <Path> en el elemento <LoadBalancer> de HTTPTargetConnection del TargetEndpoint.

Compatibilidad con la indicación del nombre del servidor (SNI)

Edge admite el uso de la indicación de nombre del servidor en dirección sur (desde el procesador de mensajes hasta los extremos de destino). Si deseas usar SNI, comunícate con el equipo de asistencia de Apigee Edge.

Se requiere Java 1.7.

Con SNI, que es una extensión de TLS/SSL, se pueden entregar varios destinos HTTPS desde la misma dirección IP y puerto sin necesidad de que todos esos destinos usen el mismo certificado.

No se requiere ninguna configuración específica de Edge. Si tu entorno está configurado para la SNI de salida (la nube perimetral está configurada de forma predeterminada), Edge la admite.

Edge extrae automáticamente el nombre de host de la URL de la solicitud y lo agrega a la solicitud de handshake SSL. Por ejemplo, si el host de destino es https://example.com/request/path, Edge agrega la extensión server_name como se muestra a continuación:

Para obtener más información sobre SNI, consulta http://en.wikipedia.org/wiki/Server_Name_Indication.

"Algoritmo de firma" en los detalles de los certificados SSL

Se agregó un nuevo campo "Algoritmo de firma" a los detalles del certificado SSL, que se puede ver en la IU de administración (Administrador > Certificados SSL) y en la API de administración (Obtén detalles del certificado de un almacén de claves o de confianza). El campo muestra "sha1WithRSAEncryption" o "sha256WithRSAEncryption", según el tipo de algoritmo de hash que se usó para generar el certificado.

Cómo mostrar los certificados SSL que están cerca de vencer

En la página Certificados SSL de la IU de administración (Administrador > Certificados SSL), se indica cuándo vencerán los certificados SSL en un plazo de 10, 15, 30 o 90 días, según la selección que realices en el nuevo campo desplegable de vencimiento.

Configuración de errores de protección contra amenazas

De forma predeterminada, Edge arroja un código de estado de error interno del servidor HTTP 500 y un error ExecutionFailed si un mensaje no pasa una política de protección contra amenazas de JSON o XML. Puedes cambiar ese comportamiento de error con una nueva propiedad a nivel de la organización. Cuando se configura la propiedad de la organización features.isPolicyHttpStatusEnabled como verdadera, se produce el siguiente comportamiento:

  • Solicitud: Si hay una política de protección contra amenazas vinculada a cualquier flujo de solicitud, los mensajes no válidos muestran un código de estado 400, junto con un mensaje de error de política correspondiente.
  • Respuesta: Con una política de protección contra amenazas vinculada a cualquier flujo de respuesta, los mensajes no válidos siguen mostrando un código de estado 500 y se genera uno de los mensajes de error de política correspondientes (en lugar de solo ExecutionFailed).

Los clientes de Cloud deben comunicarse con el equipo de asistencia de Apigee Edge para configurar la propiedad de la organización. Esta función estará disponible para los clientes de la nube privada de Edge en la próxima versión trimestral de la nube privada.

Se actualizaron los esquemas de extremos, proxies y otras entidades

Se actualizaron los esquemas de referencia para las entidades que no son de políticas, como TargetEndpoint, ProxyEndpoint, APIProxy y muchas otras. Consulta https://github.com/apigee/api-platform-samples/tree/master/schemas. (APIRT-1249)


Servicios para desarrolladores

A continuación, se incluyen las nuevas funciones de los Servicios para desarrolladores que se incluyen en esta versión.

Disponibilidad general de SmartDocs

SmartDocs pasará de la versión beta a la disponibilidad general. Las actualizaciones y las funciones nuevas incluyen lo siguiente:

  • Se agregó compatibilidad con Swagger 2.0, incluida la importación por archivo o URL, y con objetos de seguridad con nombres personalizados.
  • Se realizaron mejoras en el diseño visual de las plantillas que generan SmartDocs.
  • Mejoras en la usabilidad y el flujo de trabajo en el portal para desarrolladores, disponibles a través del menú Content > SmartDocs en Drupal.
  • Lo que se conocía como autenticación con "token personalizado" ahora se denomina "clave de API".
  • Son objetos de "seguridad" de autenticación definidos a nivel de la revisión.
  • Es la configuración de la autenticación del cliente a nivel de la plantilla. Las revisiones nuevas ya no restablecen las credenciales de cliente de SmartDocs preconfiguradas.

Para obtener más información sobre las funciones, consulta esta entrada de blog.

Para obtener documentación sobre SmartDocs, consulta Cómo usar SmartDocs para documentar APIs.

Nombre de la app para desarrolladores que se muestra en la IU de administración

Las apps para desarrolladores en Edge tienen un nombre interno que no cambia y un nombre visible que puedes cambiar. En la página de una app para desarrolladores en la IU de administración (Publicar > Apps para desarrolladores > nombre de la app), se muestra el "Nombre" interno de la app junto con el "Nombre visible", lo que facilita la identificación visual de las apps por sus nombres internos para la solución de problemas y la administración de APIs.


Servicios de estadísticas

A continuación, se indican las nuevas funciones de los Servicios de Analytics que se incluyen en esta versión.

Límite de tiempo de los datos conservados

Cuando se generan informes de estadísticas con la IU o la API de administración, no se puede acceder a los datos con más de seis meses a partir de la fecha actual de forma predeterminada. Si deseas acceder a datos con más de seis meses, comunícate con el equipo de asistencia de Apigee Edge.

Se quitará la versión clásica de los informes personalizados de la IU de administración

La versión clásica opcional de los informes de estadísticas personalizados ya no está disponible en la IU de administración.

Rendimiento del widget de participación de los desarrolladores

Se mejoró el widget de embudo en el panel de estadísticas principal (sección Participación de los desarrolladores) para proporcionar un mejor rendimiento.


Monetización

A continuación, se indican las nuevas funciones de monetización incluidas en esta versión.

Notificaciones por correo electrónico sobre planes de tarifas

Un nuevo tipo de notificación por correo electrónico del plan de tarifas te permite notificar a los desarrolladores cuando alcanzan un cierto límite de transacciones o de dólares en los planes de tarifas agrupados o con bandas de volumen que compraron. Para obtener más información, consulta Configura notificaciones con plantillas de notificaciones.

Sincronización de los períodos de la tarifa recurrente y la base de agregación

En un plan de tarifas, potencialmente había dos períodos diferentes en vigencia:

  • Período de la tarifa recurrente, configurado en la pestaña Fees de un plan de tarifas, que determinaba cuándo se les cobraba a los desarrolladores una tarifa recurrente.
  • Es el período de base de agregación, definido en la tarjeta de tarifas para los planes de bandas de volumen o paquetes, que determinó cuándo se restableció el uso de paquetes para los desarrolladores.

Esos dos períodos ahora están sincronizados. Cuando existen tanto una tarifa recurrente distinta de cero como una tarjeta de tarifas de banda de volumen o de paquete en un plan de tarifas, se usa el período de la tarifa recurrente para ambos. Por ejemplo, si existe una tarifa recurrente mensual, los paquetes de la tarjeta de tarifas también se restablecen mensualmente (de forma predeterminada, al comienzo del mes).

Si no existe una tarifa recurrente, los paquetes se restablecen según la base de agregación definida en la tarjeta de tarifas. Por ejemplo, si un desarrollador comienza a usar una tarjeta de tarifas el día 19 del mes y la base de agregación es todos los meses, el uso del paquete se restablece un mes después del día 19.

La base de agregación dejará de estar disponible y se quitará de la monetización en una versión futura. Para obtener más información, consulta Cómo especificar los detalles del plan de la hoja de tarifas.

Atributos personalizados en los informes de ingresos resumidos

Las políticas de grabación de transacciones te permiten captar de forma opcional datos de atributos personalizados de las transacciones, y ahora puedes incluir esos atributos de transacción personalizados en los informes de ingresos resumidos. Si agregas una propiedad MINT.SUMMARY_CUSTOM_ATTRIBUTES a tu organización, puedes indicar qué atributos personalizados se agregan a las tablas de la base de datos para usarlos en los informes.

Los clientes de Apigee Edge para la nube privada pueden establecer la marca con la siguiente llamada a la API y las credenciales de administrador del sistema.

curl -u email:password -X PUT -H "Content-type:application/xml" http://host:8080/v1/o/myorg -d \
"<Organization type="trial" name="MyOrganization">
    <Properties>
        <Property name="features.isMonetizationEnabled">true</Property>
        <Property name="MINT.SUMMARY_CUSTOM_ATTRIBUTES">[&quot;my_attribute_1&quot;,&quot;my_attribute_2&quot;]</Property>
        <Property name="features.topLevelDevelopersAreCompanies">false</Property>
    </Properties>
</Organization>"

Ten en cuenta que el array de atributos personalizados en la llamada a la API está codificado como URL.


Proceso de actualización de SmartDocs

Si ya usaste SmartDocs durante el período beta, las nuevas funciones y capacidades de la versión de disponibilidad general requieren que actualices SmartDocs en tu portal para desarrolladores.

Las páginas de SmartDocs que ya se publicaron en tu portal para desarrolladores seguirán funcionando, pero debes seguir el proceso de actualización antes de editar o publicar cualquier cambio en las páginas existentes o nuevas.

Ten en cuenta que, si bien puedes renderizar y publicar SmartDocs dentro de tu portal para desarrolladores, los SmartDocs se generan a partir del modelo de API que reside en los servicios de administración de APIs de Edge de Apigee. Todos los cambios que realices en un modelo de API en Edge serán los mismos en todos tus entornos de Pantheon (de manera similar a cómo existen los desarrolladores en los entornos de Pantheon).

Cómo actualizar de la versión beta de SmartDocs a la disponibilidad general

  1. Actualiza y prueba la versión 15.05.27 en tus entornos de desarrollo o prueba en Pantheon.
  2. Crea un modelo nuevo para reemplazar cualquier modelo de API existente que hayas estado usando.
    • Si importaste documentos de Swagger o WADL, vuelve a importarlos en una revisión nueva.
    • Si mantuviste tu modelo de API a través del módulo de SmartDocs, expórtalo como JSON de SmartDocs y, luego, impórtalo a tu nuevo modelo con un archivo adjunto.
  3. Establece las propiedades de seguridad de la revisión de tu modelo. En la página Content > SmartDocs > model, selecciona Security Settings.
  4. Haz clic en Configuración en la columna Operaciones para verificar cualquier autenticación preconfigurada en la página de configuración del modelo (Contenido > SmartDocs).
  5. Actualiza las plantillas personalizadas para que usen la versión 6 de los recursos CSS y JS, y realiza los cambios necesarios para reflejar los nombres de los objetos nuevos, como authSchemes y apiSchema. Para obtener información sobre cómo actualizar las plantillas de SmartDocs, consulta Cómo usar SmartDocs para documentar APIs.
  6. Vuelve a renderizar y publicar la revisión del modelo.
  7. Después de validar la nueva documentación, actualiza tu portal de producción a la versión del 27/05/15.

Si eres cliente empresarial de Edge y tienes preguntas o inquietudes sobre el proceso de actualización, envía un correo electrónico a marsh@apigee.com y cnovak@apigee.com. De lo contrario, usa la comunidad de Apigee para obtener la mejor respuesta.


Cambios y mejoras en funciones futuras

En esta sección, se incluye una vista previa de los cambios y las mejoras previstos para las funciones en el futuro:

Cambio en el comportamiento de la política de caché de respuesta

En una versión futura (a determinar), cambiará el comportamiento predeterminado del elemento <ExcludeErrorResponse> de la política de caché de respuesta.

Comportamiento actual: De forma predeterminada, el elemento <ExcludeErrorResponse> en la política de caché de respuesta es falso. Esto significa que, de forma predeterminada, la política Response Cache almacena en caché las respuestas con cualquier código de estado HTTP posible (incluido el 3xx).

Comportamiento futuro: El elemento <ExcludeErrorResponse> de la política Response Cache tendrá el valor predeterminado true. Esto significa que, de forma predeterminada, solo se almacenarán en caché las respuestas con códigos de estado HTTP del 200 al 205. Para anular este comportamiento y almacenar en caché las respuestas para todos los códigos de estado, deberás establecer el elemento <ExcludeErrorResponse> como verdadero de forma explícita.

Solución alternativa actual: Para Private Cloud 4.15.07.00 y versiones anteriores, si deseas almacenar en caché solo las respuestas con los códigos de estado del 200 al 205, debes establecer de forma explícita el elemento <ExcludeErrorResponse> como verdadero.


Fallas corregidas

En esta versión, se corrigieron los siguientes errores.

ID del problema Description
OPDK-1521 Problema de encriptación de contraseñas
OPDK-1201 No se pudieron restablecer los datos de la IU
OPDK-1112 No se aplica la política de contraseñas de LDAP personalizada al usuario administrador de Apigee
OPDK-1097 Excepción de espacio de claves durante la actualización del OPDK
OPDK-1068 Se puede cambiar la contraseña de administrador si falla durante la instalación
OPDK-1053 Zookeeper se ejecuta como administrador
OPDK-967 Cuando se configura OpenLDAP para que se inicie automáticamente con set-autostart.sh, all-status.sh informa que está inactivo
OPDK-905 Smartdocs prod already registered in group axgroup001
OPDK-899 Error durante la integración
OPDK-847 El usuario creado durante la incorporación no recibe un correo electrónico para restablecer la contraseña
OPDK-817 Las secuencias de comandos init.d arrojan un error
OPDK-815 La secuencia de comandos ax-purge.sh requiere la eliminación de las tablas de muestreo
MGMT-2246 La página de creación de informes personalizados no se muestra correctamente en la IU de administración
MGMT-2235 En el caso de los certificados SSL que vencen, el tiempo relativo de vencimiento se puede redondear de forma confusa
En el caso de los certificados SSL que vencen, el tiempo relativo de la fecha de vencimiento siempre se muestra en días en lugar de redondearse a meses, cuando el certificado vence en 90 días o menos.
MGMT-2193 Spinner de carga cuando se edita una API
MGMT-2173 La IU de Trace no permite URLs legales
Ahora, la IU de Trace te permite enviar solicitudes con valores de parámetros de consulta que contienen parámetros de consulta anidados.
MGMT-2162 Problema de compilación de JavaScript
MGMT-2124 Los permisos del rol del cliente se restablecen cuando se guardan los permisos en la IU
MGMT-2114 La IP de Syslog no válida en la política de MessageLogging debería arrojar el error adecuado durante la implementación
MGMT-2067 Registro: Si la revisión del proxy de API se implementó en 2 entornos, la selección de la revisión y el entorno no funciona correctamente
MGMT-2061 La función Olvidé la contraseña solo debe enviar correos electrónicos a los usuarios registrados
El vínculo "¿Olvidaste tu contraseña?" en la página de acceso de la IU de administración solo envía correos electrónicos a los usuarios registrados de Apigee.
MGMT-2048 El usuario con un rol personalizado que limita los permisos de implementación a un entorno puede realizar implementaciones en otros
MGMT-2041 Se quitó el elemento FaultRules de la plantilla de adjuntos predeterminada
El elemento FaultRules, que no se usa en las políticas ni en los pasos del proxy de API, ya no se agrega automáticamente cuando creas proxies de API o agregas políticas.
MGMT-2034 La recuperación de WSDL devuelve un error: "Error de recuperación de WSDL: Error al procesar WSDL".
MGMT-1986 Error de IU al agregar un desarrollador
MGMT-1983 La API de Get an OAuth 2.0 authorization code devuelve un estado incorrecto
MGMT-1962 Error al acceder a la IU de administración con una contraseña segura
Ya no se produce un error al acceder a la IU con ciertos caracteres especiales, como el signo de porcentaje.
MGMT-1947 Roles poco intuitivos en la IU de administración
Si un usuario no tiene permiso para crear o editar una política de grabación de transacciones, ahora se inhabilitan los botones de la IU para crear y editar una política de grabación de transacciones.
MGMT-1899 Se borran las rutas de recursos después de guardar la configuración del producto
Cuando se editaba un producto de API, las rutas de recursos del producto podían borrarse si el usuario hacía doble clic en el botón Guardar. Ya corregimos el problema.
MGMT-1894 La página Apps para desarrolladores nunca termina de cargarse en la columna del desarrollador
MGMT-1882 El nuevo proxy de API de WSDL solo muestra los detalles del último parámetro
MGMT-1878 Si se implementan varias revisiones en un entorno, Trace solo muestra una de ellas
MGMT-1872 No se pueden descargar informes personalizados
MGMT-1863 No se pueden ver los registros de Node.js en la IU de administración
MGMT-1843 No se abre el proxy de API
MGMT-1833 El usuario administrador del sistema no debe tener la opción de cambiar la contraseña en la IU de OPDK
MGMT-1825 Errores de secuencia de comandos entre sitios (XSS)
MGMT-1824 Error de recuperación de WSDL durante la importación de un archivo WSDL con la extensión .xml
MGMT-1812 Se agregó la validación de TargetEndpoint durante la importación
Al igual que con ProxyEndpoint, se validará que TargetEndpoint tenga el esquema y las expresiones adecuados que se usan en las condiciones durante la importación del proxy de API.
MGMT-1804 La API de Node.js envía JSON no válido en algunos casos
La pantalla de registros de Node.js solía mostrar registros sin formato si los datos JSON tenían caracteres no válidos. Este problema se corrigió en esta versión, y la IU ahora muestra registros de Node.js con un formato adecuado.
MGMT-1802 URL de restablecimiento de contraseña #118
Si la IU de administración se encuentra detrás de un servidor de finalización de SSL, ahora genera correctamente un correo electrónico de restablecimiento de contraseña con un vínculo a una URL de https en lugar de una URL de http.
MGMT-1799 Solicitud de envío de vulnerabilidad de seguridad de la IU en Trace
MGMT-1777 No se puede agregar un usuario con una dirección de correo electrónico que tenga el TLD .acn
MGMT-1735 Error de marca "Error while fetching W"
A partir de este momento, quitamos la compatibilidad con la marca personalizada en el OPDK de Edge. Si bien reconocemos que esto puede decepcionar a los pocos clientes que la usaban, esta no es una función que mejore directamente las capacidades de Edge en torno a la administración de APIs.
MGMT-1569 Problema para adjuntar un proxy de API a un producto de API existente
Se corrigió el problema para adjuntar un proxy de API a un producto de API en la IU de administración cuando el proxy de API tenía un recurso para la ruta "/".
MGMT-1563 El botón de envío en Trace permanece inhabilitado si se produce un error
MGMT-1362 El correo electrónico de Olvidé la contraseña no funciona si la dirección de correo electrónico contiene "_"
Se corrigió el problema de restablecimiento de contraseña en OPDK con direcciones de correo electrónico que contienen un guion bajo.
MGMT-1345 La importación de WSDL con varios espacios de nombres genera un paso de compilación de SOAP incorrecto
MGMT-1193 Guardar el proxy como una revisión nueva cambia inesperadamente la regla de ruta
MGMT-1061 SmartDocs: No se muestra la descripción del parámetro de tipo de cuerpo en la definición de Swagger en la IU del documento
MGMT-800 La creación de un recurso con el nombre "default" genera una IU dañada
MGMT-787 Problema de usabilidad de la alerta de la IU
En la IU de administración, cuando haces clic en + API Proxy y aparece el diálogo New API Proxy, puedes presionar Esc para descartar el diálogo.
MGMT-619 Activa la paginación en la página de la IU del proxy de API
MGMT-602 Vista de desarrollo del proxy de API: Agregar una política de Response Cache cuando el extremo no tiene PreFlow/PostFlow causa un error
MGMT-460 El cambio de nombre de la política genera un comportamiento defectuoso y una política duplicada que no se puede quitar
DEVRT-1644 La búsqueda de notificaciones por nombre hace que se envíe el correo electrónico incorrecto
DEVRT-1583 La IU de monetización muestra la insignia "Futuro" para un plan de tarifas actual
DEVRT-1546 Los límites del plan no funcionan
DEVRT-1511 Error mint.resourceDoesNotExist para un desarrollador existente
CORERT-639 TCPSysLogSocket debe ser asíncrono
CORERT-613 Errores de protocolo de enlace SSL debido a "unrecognized_name"
AXAPP-1728 Ignora las variables de monetización en Analytics
AXAPP-1708 La API de Analytics parece producir cifras diferentes para la misma estadística, según cómo la solicite
AXAPP-1707 Mejora el rendimiento de las estadísticas de los pods gratuitos
AXAPP-1690 "Error de API no válido" en informes personalizados
AXAPP-1533 El mapa geográfico de Analytics arroja el error Invalid API Call
AXAPP-1493 Las estadísticas de rendimiento de la caché son incorrectas
APIRT-1436 Crea una herramienta o un lenguaje de programación para generar hashes de tokens sin hash
APIRT-1425 El atributo continueOnError cuando se establece como "true" no tiene efecto en la política de JavaCallout
APIRT-1346 OAuth2.0: Se devuelve un valor con hash en la respuesta del token de acceso cuando hash.oauth.tokens.enabled es verdadero
APIRT-1206 target_ip no se registra en la tabla de hechos para los errores 503 y la mayoría de los errores 504
APIRT-1170 Falta un archivo de recursos que impide que MP cargue un entorno
APIRT-1148 GET de la variable {message.version} en ResponseFlow, para un destino de Node.js, arroja NPE
APIRT-1054 El registro de mensajes falla cuando se intenta registrar en un directorio diferente del predeterminado
APIRT-387 Haz que OrganizationService se ejecute en la variante "others" en MP
APIRT-67 La política de OAuth GenerateAccessToken no establece la variable oauthV2.failed correctamente
APIRT-52 Informes personalizados: El código de estado de respuesta de muchas APIs es nulo

Problemas conocidos

Esta versión tiene los siguientes problemas conocidos.

ID del problema Description
OPDK-1586

El portal de API BaaS no se inicia si no se habilita la compatibilidad con IPv6
La solución alternativa es comentar la siguiente línea de IPv6 en /<install-dir>/apigee4/conf/nginx/conf.d/loadbalancer.conf para que se ejecute el portal de API BaaS o habilitar la compatibilidad con IPv6:

# listen [::]:8080;

OPDK-1785

Instala el componente de monetización en el entorno de Edge actualizado
Si actualizas una instalación de Edge a la versión 4.15.07.00 y no usabas la monetización antes de la actualización, no podrás instalar la monetización en la versión 4.15.07.00 de Edge.

La solución alternativa es establecer la versión correcta de Monetization en el archivo apigee-env.sh antes de intentar instalar Monetization. Para obtener la versión de Monetization en 4.15.07 (después de que ya hayas actualizado a Edge 4.15.07), ejecuta lo siguiente:
> source /{install-dir}/apigee4/bin/apigee-env.sh

> VER=`basename $(find $SHARE_DIR/installer/monetization -name "mint-*.zip") | cut -d "-" -f 2,3,4`
De forma predeterminada, install-dir es /opt.
El valor de VER anterior debe establecerse en apigee-env.sh:
> sed -i "s/^MONETIZATION_VERSION=.*/MONETIZATION_VERSION=$VER/" /install-dir/apigee4/bin/apigee-env.sh
Si intentaste instalar Monetization sin realizar los pasos anteriores, la instalación fallará y es probable que haya un vínculo simbólico inactivo en el directorio compartido. Debes quitar ese vínculo simbólico:
> rm /install-dir/apigee4/share/monetization
Después de quitar el vínculo simbólico, sigue los pasos anteriores para establecer la versión de Monetización y, luego, vuelve a intentar instalarla.
OPDK-1857 Versión 2.6 de Python codificada de forma rígida en bin/qpid-stat.sh y bin/qpid-config.sh

En CentOS y RedHat 7.0, varias secuencias de comandos en bin/qpid-stat.sh y bin/qpid-config.sh están codificadas de forma rígida para usar la versión 2.6 de Python.

La solución alternativa para este problema es cambiar la línea que exporta PYTHONPATH en qpid-stat.sh y qpid-config.sh en el directorio apigee4/bin.

export PYTHONPATH="${QPID_DIR}/lib/python2.6/site-packages"

Para determinar la versión de Python en tu sistema, verifica la versión de Python en el directorio /opt/apigee4/share/apache-qpid/lib. Lo más probable es que el directorio sea python2.7.

Luego, debes actualizar el parámetro de configuración de PYTHONPATH en qpid-stat.sh y qpid-config.sh con la ruta correcta. Por ejemplo:

export PYTHONPATH="${QPID_DIR}/lib/python2.7/site-packages"

DEVRT-1574 Saldo y uso incoherentes para los desarrolladores con varios planes de tarifas activos
En la monetización, si un desarrollador tiene activo más de un plan de tarifas que tiene cargos por llamada a la API, el uso del saldo monetario a veces puede ser incoherente.
APIBAAS-1647 Después de acceder como administrador del sistema, la IU de BaaS emite el mensaje "Error getting roles"
Este mensaje de error aparece en el primer acceso del administrador del sistema al sistema después de actualizar de la versión 4.15.01 a la 4.15.07. Puedes ignorar este mensaje.
DEVRT-1834 Actualización de la monetización a la versión 4.15.07
Al final, la secuencia de comandos apigee-upgrade.sh imprime el siguiente mensaje que te solicita ejecutar otra secuencia de comandos:
**************************************
In order to complete the monetization upgrade please run:
sudo /opt/apigee4/share/monetization/schema/migration/MOPDK4.15.04.00/
365-create-notification-condition.sh
**************************************

Puedes ignorar este mensaje. Esa secuencia de comandos no es obligatoria y no se puede ejecutar.

DEVRT-1951 Falta la configuración de notificaciones en la instalación nueva de la monetización
En una instalación nueva de Apigee Edge para la nube privada, versión 4.15.07.00, faltan las siguientes configuraciones para las notificaciones de monetización. Estos corresponden a los tipos de notificaciones en la página Administrador > Notificaciones de la IU de administración.
mint.scheduler.${ORG_ID}.adhocnotify@@@management
mint.scheduler.${ORG_ID}.expiringrateplannotify@@@management
mint.scheduler.${ORG_ID}.newpkgnotify@@@management
mint.scheduler.${ORG_ID}.newproductnotify@@@management
mint.scheduler.${ORG_ID}.newrateplannotify@@@management
mint.scheduler.${ORG_ID}.tncacceptancenotify@@@management
Para solucionar este problema, sigue estos pasos. Necesitarás la dirección IP de tu instancia de Cassandra. Para encontrarlo, busca en <installation-root>/apigee4/conf/cassandra/cassandra.yaml o <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties.
  1. Ejecuta los siguientes comandos: Deja la variable {ORG_ID} como está, pero reemplaza <org_name>, <installation-root> y <cassandra_ip_address>.
    sed -e "s/\${ORG_ID}/<org_name>/g" <installation-root>/apigee4/share/monetization/schema/cassandra/org/ui/mint-org-specific-ui-schedulers.txt > /tmp/mint-org-specific-ui-schedulers.txt
    
    <installation-root>/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-ui-schedulers.txt
  2. Reinicia el servidor de administración.
DEVRT-1952 Faltan configuraciones de notificaciones en la actualización de monetización de la versión 4.14.07.00
En una actualización de Apigee Edge para la nube privada de la versión 4.14.07.00 a la 4.15.07.00, faltan los siguientes parámetros de configuración para las notificaciones de monetización, lo que provoca que los informes de monetización no funcionen correctamente.
mint.scheduler.${ORG_ID}.chargedaily@@@management
mint.scheduler.${ORG_ID}.chargehourly@@@management
Para solucionar este problema, sigue estos pasos. Necesitarás la dirección IP de tu instancia de Cassandra. Para encontrarlo, busca en <installation-root>/apigee4/conf/cassandra/cassandra.yaml o <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties.
  1. Ejecuta los siguientes comandos: Deja la variable {ORG_ID} como está, pero reemplaza <org_name>, <installation-root> y <cassandra_ip_address>.
    sed -e "s/\${ORG_ID}/<org_name>/g" <installation-root>/apigee4/share/monetization/schema/cassandra/org/system/mint-org-specific-system-schedulers.txt > /tmp/mint-org-specific-system-schedulers.txt
    
    <installation-root>/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-system-schedulers.txt
  2. Reinicia el servidor de administración.
OPDK-1878 No se puede establecer el nombre del Pod en la instalación de varios centros de datos
En la guía de instalación de Edge, se especifica que se deben establecer los nombres del Pod como "gateway-1" y "gateway-2" en los archivos de instalación silenciosa para una instalación de varios centros de datos. Sin embargo, cambiar el nombre del Pod impide que los routers y los procesadores de mensajes se registren correctamente y que se pueda acceder a ellos. Este problema también impide que la secuencia de comandos setup-org.sh pueda encontrar procesadores de mensajes disponibles.

La solución alternativa es establecer el nombre del Pod, con la propiedad MP_POD, en "gateway" en el archivo de instalación silenciosa para ambos centros de datos.
OPDK-1886

El nodo no puede acceder a direcciones IP locales, como 192.168.x.y
Ves el error "connect EINVAL" cuando intentas acceder a una dirección IP local.
La solución alternativa es editar el archivo /<install_dir>/apigee4/conf/apigee/message-processor/nodejs.properties en los nodos de Message Processor para comentar la siguiente línea:

connect.ranges.denied=10.0.0.0/8,192.168.0.0/16,127.0.0.1/32

Luego, reinicia los nodos de Message Processor:

<install_dir>/apigge4/bin/apigee-service message-processor restart 
OPDK-1958 Cuando se realiza la actualización, todos los nodos requerirán acceso al puerto 8080 en el servidor de administración
En el tiempo de ejecución, los siguientes componentes requieren acceso al puerto 8080 en el servidor de administración: Router, Message Processor, UI, Postgres y Qpid. Sin embargo, cuando se realice la actualización, todos los nodos requerirán acceso al puerto 8080 en el servidor de administración, incluidos los nodos de Cassandra y Zookeeper.
OPDK-1962 Debes volver a configurar SSL para la API de Edge después de la actualización
Si configuraste la API de Edge para que use SSL antes de actualizar a la versión 4.15.07.00, deberás volver a configurar SSL después de la actualización. Consulta la Guía de operaciones de Edge para conocer el procedimiento para configurar SSL para la API de Edge.