Creación de integraciones privadas para las API de HTTP en API Gateway
Las integraciones privadas le permiten crear integraciones de API con recursos privados en una VPC, como balanceadores de carga de aplicaciones o aplicaciones basadas en contenedores de Amazon ECS.
Puede exponer sus recursos en una VPC para que los clientes fuera de la VPC tengan acceso mediante integraciones privadas. Puede controlar el acceso a la API mediante cualquiera de los métodos de autorización admitidos por API Gateway.
Para crear una integración privada, primero debe crear un enlace de la VPC. Para obtener más información acerca de los enlaces de la VPC, consulte Configuración de enlaces de VPC para las API de HTTP en API Gateway.
Después de crear un enlace de VPC, puede configurar integraciones privadas que se conecten al Application Load Balancer, a un Network Load Balancer o a recursos registrados con un servicio de AWS Cloud Map.
Para crear una integración privada, todos los recursos deben ser propiedad de la misma cuenta de AWS (incluido el equilibrador de carga o el servicio de AWS Cloud Map, el enlace de la VPC y la API HTTP).
De forma predeterminada, el tráfico de integración privada utiliza el protocolo HTTP. Puede especificar tlsConfig
si necesita tráfico de integración privada para utilizar HTTPS. Para elloAWS Management Console, mediante la , al crear la integración privada, elija Configuración avanzada y, a continuación, indique un nombre de servidor seguro.
nota
Para integraciones privadas, API Gateway incluye la parte de etapa del punto de enlace de la API en la solicitud a sus recursos backend. Por ejemplo, una solicitud a la etapa test
de una API incluye test/
en la solicitud a su integración privada. Para eliminar el nombre de etapa de la solicitud a los recursos de backend, utilice Asignación de parámetros para sobrescribir la ruta de solicitud en route-path
$request.path
.
Crear una integración privada mediante un Application Load Balancer o un Network Load Balancer
Antes de crear una integración privada, debe crear un enlace de la VPC. Para obtener más información acerca de los enlaces de la VPC, consulte Configuración de enlaces de VPC para las API de HTTP en API Gateway.
Para crear una integración privada con un Application Load Balancer o un Network Load Balancer, cree una integración de proxy HTTP, especifique el enlace de la VPC que se va a utilizar y proporcione el ARN del agente de escucha del balanceador de carga.
Utilice el siguiente comando para crear una integración privada que se conecte a un equilibrador de carga mediante un enlace de la VPC.
aws apigatewayv2 create-integration --api-id
api-id
--integration-type HTTP_PROXY \ --integration-method GET --connection-type VPC_LINK \ --connection-idVPC-link-ID
\ --integration-uriarn:aws:elasticloadbalancing:us-east-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65
--payload-format-version 1.0
Crear una integración privada mediante la detección de servicios de AWS Cloud Map
Antes de crear una integración privada, debe crear un enlace de la VPC. Para obtener más información acerca de los enlaces de la VPC, consulte Configuración de enlaces de VPC para las API de HTTP en API Gateway.
En el caso de las integraciones con AWS Cloud Map, API Gateway utiliza DiscoverInstances
para identificar recursos. Puede utilizar parámetros de consulta para orientar recursos específicos. Los atributos de los recursos registrados deben incluir direcciones IP y puertos. API Gateway distribuye las solicitudes entre los recursos en buen estado que se devuelven desde DiscoverInstances
. Para obtener más información, consulte DiscoverInstances en la Referencia de la API de AWS Cloud Map.
nota
Si utiliza Amazon ECS para rellenar entradas en AWS Cloud Map, debe configurar su tarea de Amazon ECS para utilizar registros de SRV con Amazon ECS Service Discovery o active Amazon ECS Service Connect. Para obtener más información, consulte Servicios de interconexión en la Guía para desarrolladores de Amazon Elastic Container Service.
Para crear una integración privada con AWS Cloud Map, cree una integración de proxy HTTP, especifique el enlace de la VPC que desea utilizar y proporcione el ARN del servicio de AWS Cloud Map.
Utilice el siguiente comando para crear una integración privada que utilice la detección de servicios de AWS Cloud Map para identificar recursos.
aws apigatewayv2 create-integration --api-id
api-id
--integration-type HTTP_PROXY \ --integration-method GET --connection-type VPC_LINK \ --connection-idVPC-link-ID
\ --integration-uriarn:aws:servicediscovery:us-east-2:123456789012:service/srv-id?stage=prod&deployment=green_deployment
--payload-format-version 1.0