Cuándo usar Azure API Management

Completado

Ahora se analizarán algunos escenarios que ilustran cuándo es adecuado usar Azure API Management. Con el servicio de reparto de alimentos como ejemplo, investigaremos la administración del ciclo de vida de la API con respecto a la estandarización de las API, la centralización de la exposición y la administración de API y la mejora de la seguridad de la API. Se pueden usar los siguientes criterios para ayudarle a decidir si Azure API Management es una opción adecuada para administrar y publicar el inventario de las API de su organización:

Criterios de decisión

Criterios Análisis
Número de API La consideración clave es el número de API que administra. Cuanto más API haya implementado, mayor será la necesidad de estandarización de la implementación y centralización del control de API.
Velocidad de cambios de API La siguiente consideración es la velocidad a la que su organización implementa versiones y revisiones de API. Cuanto más rápido cree revisiones de API y publique nuevas versiones de API, mayor será la necesidad de contar con un sistema de control de versiones sólido y flexible.
Carga de administración de API La última consideración es la sobrecarga de directiva que se aplica a las API. Las directivas incluyen cuotas de uso, límites de frecuencia de llamadas, transformaciones de solicitudes y validación de solicitudes. Cuanto más configuraciones y opciones requieran las API, mayor será la necesidad de llevar a cabo implementaciones de directivas estandarizadas y centralizadas.

Aplicación de los criterios

Azure API Management es la opción correcta para administrar las API a través de sus ciclos de vida cuando tiene una implementación de API de gran tamaño que cambia con frecuencia y requiere una sobrecarga de directiva significativa. Sin embargo, estos criterios no se aplican igualmente a todos los casos de uso. Veamos cómo se aplican estos criterios a los casos de uso de nuestro escenario.

¿Debe usar Azure API Management para estandarizar las API?

Al permitir la administración de varias API desde una única interfaz administrativa, Azure API Management facilita la coherencia entre varias API. Puede estandarizar muchas características de API, entre las que se incluyen:

  • Especificaciones. La estandarización de especificaciones de API, como el uso de REST para todas las API y el de un esquema de nomenclatura coherente para pares nombre-valor JSON, reduce el tiempo de desarrollo, disminuye los errores y permite que la organización responda más rápidamente a las sugerencias de los clientes y a las fuerzas del mercado.
  • Documentación La estandarización de la documentación de la API permite a los desarrolladores ponerse al día con una API rápidamente. También reduce las consultas de soporte técnico y anima a los desarrolladores a usar más las API.
  • Direcciones URL. La estandarización de la dirección URL base de las API reduce los errores del consumidor y proporciona a las implementaciones de API una apariencia más profesional.
  • Análisis. La estandarización del análisis de API permite a los equipos de administración e ingenieros comparar el uso y el rendimiento en varias API.
  • Normativas. En el caso de las API que deben cumplir las reglas y normativas gubernamentales o del sector, la estandarización ayuda a garantizar el cumplimiento en todas las API.

Varias API con distintas configuraciones se importan en Azure API Management. Cuando surgen de API Management, tienen configuraciones estandarizadas.

En la mayoría de los casos, la necesidad de estandarización se expande a medida que ocurre lo siguiente:

  • Aumenta el número de API.
  • Aumenta la velocidad a la que se revisan las API.
  • La carga de administración de API es mayor.

Esta necesidad se aplica al escenario de la plataforma de reparto de alimentos, que requiere coherencia entre las API de la aplicación móvil, la aplicación web y los restaurantes asociados.

¿Debe usar Azure API Management para centralizar las operaciones de API?

Azure API Management mejora la centralización de todas las operaciones de API al reunir varias API bajo un único paraguas administrativo. Sin un servicio de administración de API, cada API se encuentra aislada en términos de administración, implementación y acceso para desarrolladores. Este modelo descentralizado suele tener como resultado esfuerzos duplicados y mayor sobrecarga. La centralización de las operaciones de API puede dar lugar a las siguientes ventajas:

  • Administración. Aplique las operaciones administrativas, como la creación de directivas, la administración de usuarios y el análisis, en una sola ubicación, como la interfaz administrativa proporcionada por Azure API Management. La centralización de las tareas de administración hace sea más fácil y eficaz ejecutar estas tareas.
  • Implementación. Enrute todas las solicitudes de API a través de una única dirección URL base, como el punto de conexión creado por la puerta de enlace de Azure API Management. La centralización de la implementación facilita la aplicación de directivas y la aplicación de transformaciones.
  • Acceso para desarrolladores. Coloque todos los recursos para desarrolladores, como la documentación, ejemplos de código, pruebas y suscripciones, en una sola ubicación, como el portal para desarrolladores de Azure API Management. La centralización del acceso de los desarrolladores facilita a los desarrolladores la búsqueda y el uso de las API.

Las ventajas que se obtienen al centralizar las operaciones de API tienden a aumentar con el número de API y con el tamaño de carga administrativa general que impone en las API. Tener API centralizadas es una gran ayuda cuando estas se actualizan con frecuencia, ya que esto posibilita un único esquema de control de versiones para todos los productos.

Todos estos factores se aplican firmemente a nuestro escenario de plataforma de entrega de alimentos. Por ejemplo, el acceso centralizado de los consumidores mediante el portal para desarrolladores facilita la inscripción de nuevos desarrolladores, lo que mejora la monetización de las API de la plataforma.

¿Debe usar Azure API Management para proteger el acceso a las API?

Azure API Management se ha diseñado teniendo en cuenta la seguridad. Muchas organizaciones confían en las API para el intercambio interno y externo de datos entre aplicaciones y dispositivos. Un enfoque desordenado o incoherente de la seguridad es buscarse problemas. Una estrategia de seguridad de API adecuada abarca las siguientes premisas:

  • Permisos. Controle quién puede trabajar con una API y lo que pueden hacer con ella. En Azure API Management, tener todos los consumidores de API como usuarios y poder organizarlos en grupos permite que la aplicación de permisos para controlar el acceso a la API sea más rápida y eficaz.
  • Acceso. Permita solo a los usuarios autorizados enviar solicitudes. Con Azure API Management, el portal para desarrolladores proporciona a los usuarios claves de suscripción y puede restringir el acceso a las API mediante varias formas de autenticación y tokens web JSON.
  • Protección. Proteja la API de un uso malintencionado. Azure API Management permite limitar el acceso a la API mediante el uso de límites de velocidad y cuotas de uso para ayudar a evitar el uso incorrecto del consumidor (intencionado o accidental) de la API.
  • Cumplimiento. Asegúrese de que las API cumplen todas las directivas de seguridad corporativas o gubernamentales. Tener todas las API juntas en Azure API Management facilita la configuración de esas API con directivas de seguridad que logran ese cumplimiento.

Cuanto más API administre, mayor será la necesidad de seguridad. Tener más API equivale a una mayor superficie expuesta a ataques y un mayor riesgo de fugas o infracciones accidentales de datos. Además, cuantas más veces revise las API, mayor será la posibilidad de que una revisión o una nueva versión puedan detectar un error de seguridad.

Estos problemas de seguridad son fundamentales en nuestro escenario de reparto de alimentos. Nuestra plataforma genera y almacena una gran cantidad de datos confidenciales, incluidos pagos en restaurantes, nombres y direcciones de clientes y ubicaciones de vehículos de reparto.