WSO2 APIM es una solución de código abierto que aborda todos los aspectos de la gestión de APIs, gobernación y su ciclo de vida. A parte de exponer nuestros servicios, el API Manager hace posible el desarrollo, la securización, limitación del consumo, enrutamiento, monitorización para su correcto análisis y monetización de las mismas.
Todo esto posible en entornos en la nube, on-premise e híbridos.
Este API Manager nos permite varias funciones claves como son el diseño de APIS, el control de acceso y seguridad, gestionar el tráfico así como programar el ciclo de vida, supervisar el rendimiento o permitir el acceso a terceros para visualizar nuestras APIs forma gráfica como un marketplace
Arquitectura y conceptos clave WSO2 APIM
El API Manager consiste en 6 componentes principales, API Publisher, API Developer Portal, API Gateway, Key Manager, Traffic Manager y API Analytics.
API Publisher
WSO2 nos proporciona una interfaz gráfica para el desarrollo y la gestión de nuestra API. Los creadores podrán desarrollar, documentar, añadir políticas de mediación, versionar y escalar dicha API, a la vez que facilitar las tareas de administración y monetización.
API Developer Portal
API Gatewey
El API Gateway es el encargado en tiempo de ejecución de administrar, asegurar, filtrar, proteger y escalar las llamadas a nuestra API, funcionando como un API Proxy antes de la llegada al backend.
Key Manager
El Key Manager administra todas las operaciones relacionadas con los tokens de acceso, seguridad y clientes. El Gateway se conecta con el Key Manager siempre para validar la veracidad de los tokens usados para la invocación de una API. También nos proporciona una API de Tokens.
Traffic Manager
Analytics
Novedades WSO2 APIM Versión 3.0.0
Aquí haremos un pequeño resumen con las nuevas funcionalidades que nos brindó la versión que sustituye a la tan utilizada versión 2.6.0.
Monetización de la API
Auntenticación mediante JWT
API Schema Validator
Soporte para GRAPHQL
Como cada año llega nuestra estación favorita del año: ¡el verano! y con ella nuestro evento más deseado: Summer Meeting CloudAPPi.
API Product
API Product permite a los usuarios integrar varias APIs y exponerlas como un solo producto. Esto nos facilita el empaquetamiento de diferentes servicios de diferentes maneras y exponerlos como productos separados.
Mejoras en las herramientas ya existentes
Es reseñable resaltar que esta versión trajo grandes cambios a nivel de UI, totalmente renovadas utilizando React para su desarrollo y mejorar la experiencia de usuario.
También se ha creado un nuevo modelo de configuración. Hasta la versión 2.6.0 para hacer cambios en los archivos de configuración, se tenían que modificar individualmente. Esta sobrecarga se elimina con el nuevo modelo que nos permite actualizar todo en un único archivo llamado deployment.toml
Novedades WSO2 APIM Versión 3.1.0
Aquí haremos un pequeño resumen con las nuevas características y funcionalidades que nos brindço el sucesor de la versión 3.0.0
Auitorías de APIs
WSO2 se ha asociado con 42Crunch, que es la única plataforma de seguridad API empresarial, para poder realizar una auditoría de seguridad sobre las definiciones nuestras APIs y obtener un informe de auditoría.
API Mocking
Ahora tenemos la oportunidad de poder crear prototipos de nuestra API usando payloads mockeados mediante scripts de javascript.
API Categories
Las categorías son similares a la agrupación por etiquetas. Sin embargo, los usuarios deben definir categorías de la API que los editores pueden usar al crearla. Además, a diferencia de de la agrupación por etiquetas, no se utiliza una convención de nomenclatura. Por lo tanto, con la introducción de esta función, WSO2 ha dejado de utilizar la función de agrupación por etiquetas.
Crear y publicar una API de AWS Lambda
Cuando utilizamos AWS Lambda, podemos ejecutar código sin la necesidad de tener que administrar o aprovisionar nosotros los servidores. Ahora con WSO2 podremos añadir nuestros endpoints de AWS Lambda y publicarlos.
Referencia
Novedades WSO2 APIM Versión 3.2.0
Key Manager Externo
A partir de ahora vamos a utilizar Key Managers de terceros, de forma sencilla. Lo cual facilitará la integración con sistemas ya establecidos. Esta configuración se realiza desde el portal de administración y nos permitirá hacer uso de key managers como KeyCloak o Okta.
Consola de pruebas para el API Publisher
Referencia
Analizador de consultas GRAPHQL
GraphQL es un lenguaje de consultas que surgió como alternativa a REST. Con él podremos, como clientes, solicitar sólo los datos que necesitamos. Para poder realizar consultas tan dinámicas en las que el cliente puede solicitar los datos que desee, en contrapartida, el servidor tendrá aún mayor carga de trabajo.
Ahora también incluye un analizador de consultas que es accesible desde el portal del desarrollador para poder testear su complejidad o su validez.
Key Manager Externo
Esta nueva funcionalidad nos permitirá que nuestra API se conecte con un backend con su propia securización con Oauth 2.0, siendo los parámetros especificados vía UI.
Consola de pruebas para el API Publisher
En la versión 3.1.0 del producto una de las mayores funcionalidades incluidas fue la herramienta K8s API-Operator, la cual nos permite manejar y hacer despliegues de nuestros micro servicios en un entorno de Kubernetes de forma más sencilla.
Con esta nueva versión podremos configurar los servicios para que escalen de forma automatizada y horizontalmente en función de las métricas que definamos.
API Schema Validator
API Controller es la herramienta que nos proporciona WSO2 para llevar la gestión de las APIS a través de la línea de comandos. Entre las novedades y mejoras se encuentran: Integración con GIT, Soporte de endpoints y Cambio ciclo de vida.
Conclusiones
El primer aspecto a destacar, es la estabilidad de la herramienta y las actualizaciones que recibe. Añadiendo nuevas funcionalidades de forma continuada.
Uno de sus mayores puntos fuertes, aparte de ser open source, es el ecosistema que tiene alrededor. Otro de sus puntos a favor es el nivel de customización del producto, siendo personalizable a casi todos los niveles.
La documentación, aunque ambigua a veces y no muy detallada para casos de uso muy específicos, es mejor que la mayoría de API managers.
En resumen, WSO2 cumple con su cometido con muy buena nota a nuestro parecer y es uno de los API managers pioneros y principales para realizar un gobierno de APIs.
Enlacés de interés:
¡Nosotros te ayudamos!
Author