Administración de APIs

Considerando la arquitectura antes definida, los microservicios deben ser gobernados por un administrador de APIs que trabaje en conjunto con los componentes de seguridad.
  • Descripción Técnica del Componente

Considerando que cada servicio modular del PCS atenderá a una arquitectura basada en un patrón de micro servicios, cuyo protocolo de intercambio y manipulación de datos entre servicios corresponderá al protocolo REST (Representational State Transfer). El Administrador de API’s, deberá permitir la publicación, documentación y análisis de API’s en un entorno seguro, garantizando que les sean consumidas sin descuidar la seguridad de la información.

El esquema general muestra el administrador de APIs y su comunicación con los otros componentes de la plataforma.

Figura 14 Esquema general del Administrador APIs

  • Descripción Técnica del Componente

Una solución de Administrador de API’s considera tanto el consumo como dejar disponible las funcionalidades para los servicios mediante el uso de protocolos estándares REST principalmente. De esta manera se crea una comunicación rápida y segura entre las funcionalidades que solicitaran los servicios. Dicha solución debe contar con las siguientes características:

  • Diseñar y realizar prototipos de APIs: Debe permitir realizar prototipos y diseñar APIs desde la misma interface con creación directa o importada.
  • Publicar y gestionar APIs: La herramienta debe permitir publicar internamente APIs, en una primera fase y considerando los requerimientos funcionales, estas APIs deben publicarse de manera interna para ser consumidas por los servicios del PCS. Sin embargo, debe permitir gestionar la visibilidad de la API y restringir los accesos desde el exterior. 
  • Control de Acceso y Seguridad: Debe Aplicar políticas de seguridad a las API (autenticación, autorización), trabajando con el estándar OAuth2 y la posibilidad de incorporar clave única de sesión tipo single sign On/SAML 2.0.
  • Crear Almacenamiento para todas las APIs disponibles: Debe posee un interfaz amigable que permita buscar APIs, según criterios de búsqueda. Debe permitir la subscripción y configurar permisos y niveles.
  • Supervisar y Monitorear el rendimiento de las APIs: El monitoreo de las APIs debe ser concordante con el BAM presente en la arquitectura, pudiendo analizar y visualizar en tiempo real el performance o problemas de comunicación.
  • Benchmark

Considerando los requerimientos técnicos, funcionales y las directrices asociadas a la naturaleza del componente, los productos que se ajustan a este requerimiento y de naturaleza open source son: Mulesoft Api Management (Líder) y Wso2 Api Manager, Red Hat 3Scale y Kong (todos en cuadrante de visionarios). 

Figura 15 Cuadro de Gartner para administradores APIs.