Riferimenti API - Amazon API Gateway

Riferimenti API

Amazon API Gateway fornisce API per la creazione e la distribuzione delle proprie API HTTP e WebSocket. Inoltre, le API di API Gateway sono disponibili negli SDK AWS standard.

Se stai utilizzando un linguaggio per il quale esiste un AWS SDK, potresti scegliere di utilizzare SDK anziché direttamente le API REST di API Gateway. Gli SDK semplificano l'autenticazione, si integrano senza problemi nel tuo ambiente di sviluppo e forniscono pratico accesso ai comandi API Gateway.

Di seguito viene mostrato dove trovare la AWS documentazione di riferimento degli SDK e delle API REST di API Gateway:

Endpoint del servizio Gateway API

L’endpoint è un URL che funge da punto di ingresso per un servizio Web AWS. Gateway API supporta i seguenti tipi di endpoint:

Quando si effettua una richiesta, è possibile specificare l’endpoint da utilizzare. Se non specifichi un endpoint, per impostazione predefinita viene utilizzato l'endpoint IPv4. Per utilizzare un tipo di endpoint diverso, devi specificarlo nella richiesta. Per esempi su come eseguire questa operazione, consulta Specificazione degli endpoint. Per una tabella degli endpoint disponibili, consulta Amazon API Gateway endpoints.

Endpoint IPv4

Gli endpoint IPv4 supportano solo il traffico IPv4. Gli endpoint IPv4 sono disponibili per tutte le Regioni.

Se specifichi l'endpoint generico, apigateway.amazonaws.com, utilizziamo l'endpoint per us-east-1. Per utilizzare una Regione diversa, specifica l'endpoint associato. Ad esempio, se specifichi apigateway.us-east-2.amazonaws.com come endpoint, indirizzeremo la tua richiesta all'endpoint us-east-2.

I nomi degli endpoint IPv4 usano la seguente convenzione di denominazione:

  • apigateway.region.amazonaws.com

Ad esempio, il nome dell'endpoint IPv4 per la Regione eu-west-1 è apigateway.eu-west-1.amazonaws.com.

Endpoint dualstack (IPv4 e IPv6)

Gli endpoint dualstack supportano sia il traffico IPv4 sia il traffico IPv6. Quando si effettua una richiesta a un endpoint dualstack, l’URL dell’endpoint viene risolto in un indirizzo IPv6 o IPv4 a seconda del protocollo utilizzato dalla rete e dal client.

I nomi degli endpoint dual-stack usano la seguente convenzione di denominazione:

  • apigateway.region.api.aws

Ad esempio, il nome dell'endpoint dual-stack per la Regione eu-west-1 è apigateway.eu-west-1.api.aws.

Specificazione degli endpoint

Gli esempi seguenti mostrano come specificare un endpoint per la Regione us-east-2 utilizzando AWS CLI per apigateway.

  • Dualstack

    aws apigateway get-rest-apis --region us-east-2 --endpoint-url https://apigateway.us-east-2.api.aws
  • IPv4

    aws apigateway get-rest-apis --region us-east-2 --endpoint-url https://apigateway.us-east-2.amazonaws.com

Gli esempi seguenti mostrano come specificare un endpoint per la Regione us-east-2 utilizzando AWS CLI per apigatewayv2.

  • Dualstack

    aws apigatewayv2 get-apis --region us-east-2 --endpoint-url https://apigateway.us-east-2.api.aws
  • IPv4

    aws apigatewayv2 get-apis --region us-east-2 --endpoint-url https://apigateway.us-east-2.amazonaws.com

Utilizzo degli indirizzi IPv6 nelle policy IAM

Se si utilizzano policy utente IAM o policy di risorse Gateway API per controllare l’accesso a Gateway API o a qualsiasi API di Gateway API, è necessario verificare che le policy siano aggiornate in modo da includere gli intervalli di indirizzi IPv6. Le policy che non sono aggiornate per gestire gli indirizzi IPv6 potrebbero influire sull’accesso del client a Gateway API quando inizia a utilizzare l’endpoint dualstack. Per ulteriori informazioni sulla gestione delle autorizzazioni di accesso con IAM, consultare Gestione delle identità e degli accessi per Amazon API Gateway.

Le policy IAM che filtrano gli indirizzi IP utilizzano gli operatori di condizione degli indirizzi IP. La seguente policy di identità consente agli indirizzi IP inclusi nell’intervallo 54.240.143.* di ottenere informazioni su tutte le risorse di un’API HTTP o WebSocket con l’identificatore a123456789. A qualsiasi indirizzo IP non incluso in questo intervallo verrà negato l’accesso a tutte le risorse dell’API. Poiché tutti gli indirizzi IPv6 non sono inclusi nell’intervallo consentito, questa policy impedisce agli indirizzi IPv6 di accedere alle informazioni sull’API.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "IPAllow", "Effect": "Allow", "Principal": "*", "Action": "apigateway:GET", "Resource": "arn:aws:apigateway:us-east-1::/apis/a123456789/*", "Condition": { "IpAddress": {"aws:SourceIp": "54.240.143.0/24"} } } ] }

È possibile modificare l’elemento Condition della policy dell’API per consentire entrambi gli intervalli di indirizzi IPv4 (54.240.143.0/24) e IPv6 (2001:DB8:1234:5678::/64), come mostrato nell’esempio seguente. È possibile utilizzare lo stesso tipo di blocco Condition mostrato nell’esempio per aggiornare sia le policy utente IAM sia le policy di risorse Gateway API.

"Condition": { "IpAddress": { "aws:SourceIp": [ "54.240.143.0/24", "2001:DB8:1234:5678::/64" ] } }