Utilisation des intégrations privées pour les API HTTP - Amazon API Gateway

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation des intégrations privées pour les API HTTP

Les intégrations privées vous permettent de créer des intégrations d'API avec des ressources privées dans un VPC, telles que des équilibreurs Application Load Balancer ou des applications basées sur un conteneur Amazon ECS.

Vous pouvez exposer vos ressources dans un VPC pour que des clients puissent y accéder en dehors du VPC à l'aide d'intégrations privées. Vous pouvez contrôler l'accès à votre API à l'aide de n'importe quelle méthode d'autorisation prise en charge par API Gateway.

Pour créer une intégration privée, vous devez d'abord créer un lien VPC. Pour de plus amples informations sur les liens VPC, veuillez consulter Utilisation des liens VPC pour les API HTTP.

Après avoir créé un lien VPC, vous pouvez configurer des intégrations privées qui se connectent à un Application Load Balancer, à un Network Load Balancer ou à des ressources enregistrées auprès d'un service. AWS Cloud Map

Pour créer une intégration privée, toutes les ressources doivent appartenir au même AWS compte (y compris l'équilibreur de charge ou le AWS Cloud Map service, le lien VPC et l'API HTTP).

Par défaut, le trafic d'intégration privée utilise le protocole HTTP. Vous pouvez spécifier un tlsConfig si vous avez besoin d'un trafic d'intégration privée pour utiliser HTTPS.

Note

Pour les intégrations privées, API Gateway inclut la partie de l'étape du point de terminaison d'API dans la demande adressée à vos ressources backend. Par exemple, une demande à l'étape test d'une API inclut test/route-path dans la demande à votre intégration privée. Pour supprimer le nom de l’étape de la demande pour vos ressources backend, utilisez le mappage de paramètres pour écraser le chemin d'accès à la requête vers $request.path.

Créer une intégration privée à l'aide de Application Load Balancer ou de Network Load Balancer

Avant de créer une intégration privée, vous devez créer un lien VPC. Pour de plus amples informations sur les liens VPC, veuillez consulter Utilisation des liens VPC pour les API HTTP.

Pour créer une intégration privée avec un équilibreur Application Load Balancer ou un équilibreur Network Load Balancer, créez une intégration de proxy HTTP, spécifiez le lien VPC à utiliser et fournissez l'ARN de l'écouteur de l'équilibreur de charge.

Utilisez la commande suivante pour créer une intégration privée qui se connecte à un équilibreur de charge à l'aide d'un lien VPC.

aws apigatewayv2 create-integration --api-id api-id --integration-type HTTP_PROXY \ --integration-method GET --connection-type VPC_LINK \ --connection-id VPC-link-ID \ --integration-uri arn:aws:elasticloadbalancing:us-east-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65 --payload-format-version 1.0

Création d'une intégration privée à l'aide de la découverte AWS Cloud Map de services

Avant de créer une intégration privée, vous devez créer un lien VPC. Pour de plus amples informations sur les liens VPC, veuillez consulter Utilisation des liens VPC pour les API HTTP.

Pour les intégrations avec AWS Cloud Map, API Gateway les utilise DiscoverInstances pour identifier les ressources. Vous pouvez utiliser des paramètres de requête pour cibler des ressources spécifiques. Les attributs des ressources enregistrées doivent inclure les adresses IP et les ports. API Gateway distribue les demandes entre les ressources saines qui sont renvoyées à partir de DiscoverInstances. Pour en savoir plus, consultez DiscoverInstancesle Guide de référence des AWS Cloud Map API.

Note

Si vous utilisez Amazon ECS pour renseigner les entrées AWS Cloud Map, vous devez configurer votre tâche Amazon ECS pour utiliser les enregistrements SRV avec Amazon ECS Service Discovery ou activer Amazon ECS Service Connect. Pour en savoir plus, consultez Interconnexion des services dans le Guide du développeur Amazon Elastic Container Service.

Pour créer une intégration privée avec AWS Cloud Map, créez une intégration de proxy HTTP, spécifiez le lien VPC à utiliser et fournissez l'ARN du AWS Cloud Map service.

Utilisez la commande suivante pour créer une intégration privée qui utilise la découverte AWS Cloud Map de services pour identifier les ressources.

aws apigatewayv2 create-integration --api-id api-id --integration-type HTTP_PROXY \ --integration-method GET --connection-type VPC_LINK \ --connection-id VPC-link-ID \ --integration-uri arn:aws:servicediscovery:us-east-2:123456789012:service/srv-id?stage=prod&deployment=green_deployment --payload-format-version 1.0