Creazione delle integrazioni private per API HTTP in Gateway API
Le integrazioni private consentono di creare integrazioni API con risorse private in un VPC, come ad esempio Application Load Balancer o applicazioni basate su container di Amazon ECS.
Puoi esporre le risorse in un VPC per l'accesso da parte di client esterni al VPC utilizzando integrazioni private. È possibile controllare l'accesso all'API utilizzando uno qualsiasi dei metodi di autorizzazione supportati da API Gateway.
Per creare un'integrazione privata, devi innanzitutto creare un collegamento VPC. Per ulteriori informazioni sui collegamenti VPC, consultare Configurazione dei collegamenti VPC per le API HTTP in Gateway API.
Dopo aver creato un collegamento VPC, è possibile impostare integrazioni private che si connettono ad Application Load Balancer, a Network Load Balancer o alle risorse registrate con un servizio AWS Cloud Map.
Per creare un'integrazione privata, tutte le risorse devono essere di proprietà dello stesso account AWS (incluso il load balancer o il servizio AWS Cloud Map, il collegamento VPC e HTTP API).
Per impostazione predefinita, il traffico di integrazione privata utilizza il protocollo HTTP. Puoi specificare tlsConfig
se è necessario traffico di integrazione privata per utilizzare HTTPS. Per utilizzare la AWS Management Console quando si crea l'integrazione privata, scegli Impostazioni avanzate e inserisci il nome di un server sicuro.
Nota
Per le integrazioni private, API Gateway include la porzione fase dell'endpoint API nella richiesta alle risorse back-end. Ad esempio, una richiesta alla fase test
di un'API include test/
nella richiesta all'integrazione privata. Per rimuovere il nome della fase dalla richiesta alle risorse di back-end, utilizzare parameter mapping (mappatura dei parametri) per sovrascrivere il percorso della richiesta a route-path
$request.path
.
Creare un'integrazione privata utilizzando un Application Load Balancer o un Network Load Balancer
Prima di creare un'integrazione privata, è necessario creare un collegamento VPC. Per ulteriori informazioni sui collegamenti VPC, consultare Configurazione dei collegamenti VPC per le API HTTP in Gateway API.
Per creare un'integrazione privata con un Application Load Balancer o un Network Load Balancer, creare un'integrazione proxy HTTP, specificare il collegamento VPC da utilizzare e fornire l'ARN del listener del sistema di bilanciamento del carico.
Utilizzare il comando seguente per creare un'integrazione privata che si connette a un sistema di bilanciamento del carico utilizzando un collegamento 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
Creare un'integrazione privata utilizzando l'individuazione dei servizi AWS Cloud Map
Prima di creare un'integrazione privata, è necessario creare un collegamento VPC. Per ulteriori informazioni sui collegamenti VPC, consultare Configurazione dei collegamenti VPC per le API HTTP in Gateway API.
Per le integrazioni con AWS Cloud Map, API Gateway utilizza DiscoverInstances
per identificare le risorse. È possibile utilizzare i parametri di query per fare riferimento a risorse specifiche. Gli attributi delle risorse registrate devono includere indirizzi IP e porte. API Gateway distribuisce le richieste tra le risorse integre restituite da DiscoverInstances
. Per ulteriori informazioni, consulta la sezione DiscoverInstances nella Guida di riferimento per le API AWS Cloud Map.
Nota
Se utilizzi Amazon ECS per popolare le voci in AWS Cloud Map, è necessario configurare l'attività Amazon ECS affinché utilizzi i record SRV con Rilevamento servizi di Amazon ECS oppure attivare Amazon ECS Service Connect. Per ulteriori informazioni, consulta Interconnecting services nella Guida per gli sviluppatori di Amazon Elastic Container Service.
Per creare un'integrazione privata con AWS Cloud Map, creare un'integrazione proxy HTTP, specificare il collegamento VPC da utilizzare e fornire l'ARN del servizio AWS Cloud Map.
Utilizzare il comando seguente per creare un'integrazione privata che utilizza Individuazione dei servizi AWS Cloud Map per identificare le risorse.
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