Gravitee API Manager como API Manager avanzado en Plataforma

Introducción 

Onesait Platform ha integrado Gravitee como solución API Manager donde se necesitan capacidades avanzadas de API Manager.

Esta integración forma parte de la versión Enterprise y convive con el API Manager básico, con el que se integra. 

Capacidades

Las principales ventajas que aporta Gravitee a la plataforma son las siguientes:

  • Fácil gestión y administración de APIs (ciclos de vida, planes de subscripción, etc.), a través de la UI que ofrece.

  • Analítica, estadísticas de uso de las APIs, logs, etc… Estos datos se almacenan en ElasticSearch.

  • Fácil implementación de reglas y políticas para cada API, seguridad, control del throttling (incluso diferentes para cada endpoint dentro de una misma API).

  • En el futuro facilitará la implementación de modelos ‘freemium’ en las APIs de plataforma.

Las APIs publicadas en Gravitee, se atacarán directamente a través del Gravitee Management Gateway. Esto implica que si se trata de una API externa a plataforma, las peticiones no pasarán en ningún momento por ninguno de nuestros microservicios, sin embargo, para las APIs sobre ontologías, se seguirá utilizando nuestro API Manager, eso sí, después de pasar por Gravitee.

Publicación de un API en Gravitee

A continuación vamos a detallar el proceso de creación y publicación de una API en Gravitee, no obstante, existe una videoguía en nuestro canal de youtube con el proceso completo, y más detallado.

A la hora de crear una API desde plataforma, veremos un checkbox que nos permitirá publicarla en Gravitee:


Una vez creada, en el listado de APIs, veremos que aparece un nuevo icono con el logo de Gravitee, dónde se nos permitirá navegar a tres enlaces distintos:


Además, si entramos en cualquier API publicada en Gravitee, veremos que el endpoint aparece otra URL que no pertenece a la de nuestro API Manager. Se trata de la URL del Gateway de Gravitee:


Los tres enlaces antes mencionados nos ofrecen:

  • Analytics: vista integrada de la UI de analítica de nuestra API, desde aquí podemos ver los logs de acceso, códigos de respuesta, paths más demandados, etc.



  • Policies: vista integrada de la UI para gestión de reglas y políticas. Desde aquí podremos añadir diferentes políticas a nuestra API.


  • Gravitee UI: este enlace, solo disponible para administradores, nos llevará a nueva pestaña con la interfaz completa de Gravitee, para realizar tareas de administración, ver estadísticas de todas las APIs, etc


Seguridad y autenticación en Gravitee

La autenticación y autorización en Gravitee se hacen a través de nuestro Oauth2 Server, siguiendo el modelo de SSO. De esta forma los roles de plataforma serán mapeados acorde con roles de Gravitee

Gravitee Role

Platform Roles

USER (API_CONSUMER)

USER

API_PUBLISHER

DEVELOPER

ADMIN

ADMINISTRATOR, ANALYTICS

La documentación específica para las funcionalidades que soporta Gravitee las podéis encontrar en: https://docs.gravitee.io/