APIs Arquitectura de Software Technology
open finance blog principal

Exponer aplicaciones a través de una API permite que otras aplicaciones accedan fácilmente a los servicios y datos que proporcionan esas aplicaciones. La mejor manera de hacerlo es con una solución de API Management, una tecnología que pone a un intermediario entre consumidores y las aplicaciones a las que acceden. Y en un mundo centrado en la nube, es común que la solución de API Management se ejecute en una plataforma de nube en particular: Azure API Management.

Sin embargo, las aplicaciones y datos que exponen las APIs probablemente se distribuyen en entornos en la nube y on-presmise. Gestionar estas API de manera consistente a lo largo de una organización es una parte clave para aumentar la productividad y maximizar el valor de negocio. Para hacer esto, las organizaciones necesitan un enfoque unificado para la Gestión de API a través de entornos híbridos y multi nube.

Introducción a Azure API Management

Azure API Management proporciona la posibilidad de implementar una puerta de enlace de administración de API auto hospedada junto con las demás características de Azure API Management para abordar este problema.

La puerta de enlace auto hospedada amplía la compatibilidad de API Management con entornos híbridos y de varias nubes y permite a las organizaciones administrar de forma eficaz y segura las API hospedadas localmente y en diferentes nubes desde un único servicio de API Management en Azure.

Para comprender el valor de una puerta de enlace auto hospedada, primero se deben comprender los fundamentos de API Management.

Fundamentos de API Management

Las soluciones de API Management suelen proporcionar servicios como:

  • Autoservicio de incorporación de usuarios. Un lugar para catalogar y compartir las APIs, permitir a los developers aprender sobre las APIs, leer documentación, ver ejemplos de implementación y probar las APIs.
  • Crear una fachada que oculte los backends de los clientes. Es una forma de modernizar sistemas backend heredados sin afectar otras aplicaciones que los utilizan.
  • Establecer un único punto de entrada (puerta de entrada) para las aplicaciones y datos de backend. Permite enrutar solicitudes y trabajar con autenticación y autorizaciones.

    Al brindar servicios como estos, las soluciones de administración de API ayudan a hacer API más seguras, más eficientes y más fáciles de usar.

Problema: Proveer la capacidad de Administración de API unificada en entornos híbridos y multi-cloud

Como se mencionó anteriormente la mayoría de las soluciones de API Management se ejecutan sobre la nube y mientras todos los servicios, aplicaciones y datos de backend están basados puramente en la nube el servicio de Administración de APIs puede funcionar muy bien y para casi todos los escenarios, pero no es un escenario muy habitual.

Administración de Azure API Management

Como se ilustra en el diagrama, todas las solicitudes a aplicaciones y datos de backend pasan por la nube que proporciona el servicio de API Management.

Para aplicaciones y datos ubicados en la misma nube que el servicio de API Management, esto está bien.

Pero, ¿qué pasa con las solicitudes a aplicaciones y datos que no están ubicados en la misma nube que el servicio de API Management?

Como se muestra en el diagrama todas las solicitudes a aplicaciones on-premise y a aplicaciones ubicadas en otras nubes también deben pasar por la nube que proporciona el servicio de API Management. Lo que nos plantea tres interrogantes:

¿Qué sucede si un cliente accede a aplicaciones y datos on-premise dentro de él mismo entorno corporativo, pero no se permite que el tráfico deje este entorno?

Cuando un cliente accede a aplicaciones y datos en otra nube pública, ¿Por qué pagar el ancho de banda dos veces?

Si el cliente y el servicio backend están en el mismo entorno, como cuando ambos están on-premise, ¿por qué incurrir en la demora de ir a través de una nube pública para el servicio de API Management?

Solución: Puerta de enlace de Administración de API auto hospedada

Aunque las soluciones de API Management generalmente se ejecutan en la nube, esto no quiere decir que sea la única opción. Como se muestra en el siguiente diagrama, la opción de implementar una puerta de enlace de administración de API auto hospedada permite otras posibilidades.

Una puerta de enlace de Administración de API auto hospedada puede ejecutarse on-premise y en otras nubes, mientras sigue siendo administrada por un servicio de API Management principal. Esto quiere decir que la puerta de enlace auto hospedada no reemplaza el servicio principal de API Management basado en la nube. En su lugar, extiende este servicio proporcionando los aspectos esenciales de la Administración de API en aplicaciones que las organizaciones pueden ejecutar donde quieran.

diagrama api auto hospedada

Como lo muestra el diagrama anterior, los escenarios más importantes para usar esta puerta de enlace auto hospedada son:

  • Ejecución de la puerta de enlace de administración de API auto hospedada en un centro de datos on-premise.
  • Ejecución de la puerta de enlace de administración de API auto hospedada en otras nubes.

Acerca de la solución de Azure API Management

Azure API Management es una plataforma híbrida de varias nubes para administrar las API en todos los entornos. A continuación se proporciona información general sobre escenarios comunes y componentes clave de API Management.

Escenarios

Entre los escenarios habituales se incluyen los siguientes:

  • Desbloqueo de recursos heredados: las API se usan para abstraer y modernizar back-ends heredados y hacer que sean accesibles desde nuevos
  • Servicios en la nube y aplicaciones modernas. Las API permiten la innovación sin el riesgo, el costo y los retrasos de la migración.

  • Integración de aplicaciones centradas en API: las API son mecanismos fáciles de consumir, basados en estándares y autodescriptivos para exponer datos, aplicaciones y procesos y acceder a todos ellos. Simplifican y reducen el costo de la integración de aplicaciones.

  • Experiencias de usuario multicanal: las API se utilizan con frecuencia para habilitar experiencias de usuario como aplicaciones web, móviles, portátiles o de Internet de las cosas. Reutilice las API para acelerar el desarrollo y la rentabilidad de la inversión.

  • Integración B2B: las API expuestas a asociados y clientes reducen la barrera para integrar procesos empresariales e intercambiar datos entre entidades empresariales. Las API eliminan la sobrecarga inherente a la integración punto a punto. Especialmente con la detección y la incorporación de autoservicio habilitadas, las API son las herramientas principales para escalar la integración B2B

Components Azure API Management

Azure API Management está formado por una API Gateway, un plano de Administración y un Developer Portal.

API Gateway

Todas las solicitudes de las aplicaciones cliente llegan primero a la puerta de enlace de API, que luego las reenvía a los servicios back-end correspondientes.

La puerta de enlace de API:

  • Acepta llamadas de API y las enruta a los back-end configurados
  • Comprueba las claves de API, los tokens JWT, los certificados y otras credenciales
  • Aplica cuotas de uso y límites de frecuencia
  • Opcionalmente, transforma solicitudes y respuestas como se especifica en las instrucciones de directiva
  • Si está configurada, almacena en caché las respuestas para mejorar la latencia de respuesta y minimizar la carga en los servicios back-end
  • Emite registros, métricas y seguimientos para la supervisión, los informes y la solución de problemas

Plano de Admistración

Los proveedores de API interactúan con el servicio a través del plano de administración, que proporciona acceso completo a las funcionalidades del servicio API Management.

El plano de administración se usa para:

  • Aprovisionar y definir la configuración del servicio API Management
  • Definir o importar esquemas de API desde una amplia gama de orígenes, incluidas las especificaciones de OpenAPI, los servicios de proceso de Azure o los back-end de WebSocket o GraphQL
  • Empaquetar API en productos
  • Configurar directivas, como cuotas o transformaciones, en las API
  • Obtener información del análisis
  • Administrar usuarios

 

Developer Portal

Es un sitio web con la documentación de las API.

Los desarrolladores de aplicaciones usan el developer portal para detectar las API, incorporarlas para usarlas y aprender a consumirlas en las aplicaciones.

Mediante el portal para desarrolladores, los desarrolladores pueden:

  • Leer documentación de la API
  • Llamar a una API a través de la consola interactiva
  • Crear una cuenta y suscribirse para obtener claves de API
  • Acceder a análisis sobre su propio uso
  • Descargar definiciones de API
  • Administrar claves de API
// ¿Quieres implementar una puerta de enlace auto hospedada de Azure API Management?

¡Reserva una reunión con expertos!

Author

Sandra Ciruelos

Leave a comment

Tu dirección de correo electrónico no será publicada.