Administrar APIs - AWS Guía prescriptiva

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Administrar APIs

Una gestión adecuada de las API hace que sus microservicios sean accesibles tanto para los consumidores internos como externos. AWS ofrece una variedad de servicios que puede usar juntos para exponer su APIs microservicio de forma segura. Estos servicios le permiten reforzar la seguridad e implementar la supervisión APIs y la observabilidad desde una ubicación central. También puedes usar Amazon CloudFront para mejorar el rendimiento si tus usuarios APIs se encuentran geográficamente alejados del lugar en el Región de AWS que están alojados los servicios.

Amazon API Gateway

Amazon API Gateway es un servicio totalmente gestionado que permite a los desarrolladores crear, publicar, mantener, supervisar y proteger REST WebSocket APIs a cualquier escala. Se puede usar API Gateway para implementar muchos de los patrones descritos en la sección Patrones de comunicación de esta guía.

Existen dos tipos principales de REST APIs: REST y HTTP. Ambos tipos son compatibles RESTful APIs, pero ofrecen características diferentes. Para determinar cuál se adapta mejor a sus necesidades, consulte Elegir entre REST APIs y HTTP APIs en la documentación de API Gateway. Esta sección de la guía se centra en API Gateway REST APIs.

El uso de API Gateway como punto de entrada APIs proporciona un lugar único para implementar problemas comunes, como la validación y la seguridad de las solicitudes. API Gateway REST APIs ofrece validación de solicitudes, que te permite definir el formato de tus solicitudes mediante el esquema JSON. API Gateway valida las solicitudes entrantes según el esquema definido y rechaza las solicitudes con formato incorrecto.

Autenticación y autorización

API Gateway REST APIs admite los siguientes mecanismos de autenticación (AuthN) y autorización (AuthZ):

  • IAM: si se utiliza IAM, las solicitudes a la API deben firmarse mediante la Signature Version 4 (SigV4) de AWS.

  • Amazon Cognito: API Gateway validará el token portador presentado como emitido por un grupo de usuarios de Amazon Cognito. También se puede configurar un grupo de usuarios de Amazon Cognito para que se integre con un proveedor de identidades (IdP) externo, si ya se está utilizando uno. También puede usar un grupo de usuarios de Amazon Cognito para la autenticación machine-to-machine (M2M).

  • AWS Lambda autorizador: API Gateway invocará una función de Lambda que especifique para realizar las comprobaciones que desee a fin de determinar si una solicitud debe autorizarse.

Para obtener más información, consulte Control y administración del acceso a REST APIs en la documentación de API Gateway.

Claves de API y límites de velocidad

Puedes controlar quién puede llamarte APIs y a qué velocidad mediante las claves de API y los planes de uso. Las claves de API no se deben usar para la autenticación, pero se pueden usar junto con los esquemas mencionados anteriormente. Los usuarios no siempre necesitan proporcionar su propia clave de API; por ejemplo, los autorizadores de Lambda pueden devolver una clave de API para un usuario. El plan de uso permite especificar el rendimiento, el límite de ráfaga y la cuota mensual. Para obtener más información, consulta Planes de uso y claves de API para REST APIs en la documentación de API Gateway.

Público y privado APIs

Los REST de API Gateway a los APIs que se puede acceder a través de Internet admiten dos tipos de puntos finales:

  • Optimizado para Edge, lo que significa que las solicitudes de las personas que llaman se envían a un CloudFront punto de presencia (POP) cercano. Esto puede mejorar el rendimiento de los clientes geográficamente dispares.

  • Regional, lo que significa que las solicitudes se dirigen a un recurso dentro de una Región de AWS específica. Esta es una buena opción cuando todos los clientes están cerca de la región en la que está implementada su API.

API Gateway REST APIs también admite puntos de enlace de API privados, a los que se puede acceder desde una nube privada virtual (VPC) mediante un punto de enlace de VPC de interfaz. También puede compartir REST privado de forma segura APIs mediante la creación de puntos finales de VPC de interfaz en otros VPCs e incluso en otros. Cuentas de AWS Para obtener más información, consulta los tipos de puntos de conexión de API para REST APIs en la documentación de API Gateway.

Cuándo usar API Gateway

API Gateway es una buena opción para servicios RESTful web y WebSocket conexiones en tiempo real. Cuando lo usas WebSocket APIs en API Gateway, puedes añadir comportamientos para los eventos de conexión y desconexión, como almacenar la conexión IDs en un banco de datos externo asociado a los atributos del cliente. También se pueden dirigir las solicitudes a comportamientos personalizados mediante los atributos de los mensajes.

Tanto REST como WebSocket APIs pueden integrarse directamente con muchos Servicios de AWS sin necesidad de recursos informáticos separados, como las funciones Lambda. Esto puede mejorar el rendimiento y reducir los costos.

REST APIs admite el enrutamiento basado en rutas y en encabezados, y puede usarlos por separado o juntos. Un patrón común es proporcionar una API REST como puerta de entrada para una serie de aplicaciones, con el fin de implementar problemas comunes APIs, tal como se ha explicado anteriormente, y luego comportarse como un proxy inverso y enrutar las solicitudes autorizadas al punto final de la API correcto.