Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Puoi invocare un'API privata solo dall'interno di un VPC utilizzando un endpoint VPC. La tua API privata deve avere una politica delle risorse che consenta a endpoint specifici VPCs e VPC di richiamare la tua API.
Invocazione di un'API privata utilizzando un nome di dominio personalizzato
Per invocare un'API privata utilizzando un nome di dominio personalizzato, è necessario che l'endpoint VPC disponga di un'associazione di accesso ai nomi di dominio con un nome di dominio personalizzato e il nome di dominio personalizzato deve consentire l'accesso affinché l'endpoint VPC possa invocarla. Per ulteriori informazioni, consulta Nomi di dominio personalizzati per uso privato APIs in API Gateway.
Non ci sono differenze tra invocare un nome di dominio privato personalizzato in un VPC Account AWS proprio o in un altro. Account AWS
Uso del nome di dominio personalizzato
All'interno del tuo VPC, puoi invocare la tua API utilizzando il nome di dominio personalizzato. L'esempio seguente è un comando curl per invocare il tuo nome di dominio personalizzato privato:
curl https://private.example.com
Uso di nomi host DNS privati specifici dell'endpoint
Puoi richiamare la tua API utilizzando il nome di dominio personalizzato e il nome host DNS privato specifico dell'endpoint.
curl https://
private-dns-hostname
.execute-api.region
.vpce.amazonaws.com/basepath
-H 'Host:custom-domain-name
'
L'esempio seguente è un comando curl per richiamare il nome di dominio personalizzato utilizzando un hostname DNS privato specifico dell'endpoint:
curl https://vpce-123456-abc000.execute-api.us-east-2.vpce.amazonaws.com/test -H 'Host:private.example.com'
Invocazione di un'API privata senza utilizzare un nome di dominio personalizzato
Per invocare la tua API privata senza utilizzare un nome di dominio personalizzato, devi identificare i nomi DNS per l'API. La procedura seguente mostra come trovare i nomi DNS.
Per trovare i nomi DNS
-
Accedi a AWS Management Console e apri la console Amazon VPC all'indirizzo. https://console.aws.amazon.com/vpc/
-
Nel pannello di navigazione principale, scegli Endpoint, quindi seleziona l'endpoint VPC dell'interfaccia per Gateway API.
-
Nel riquadro Dettagli verranno visualizzati 5 valori nel campo Nomi DNS. I primi tre sono i nomi DNS pubblici per l'API. Gli altri due sono i nomi DNS privati.
Invocazione di un'API privata utilizzando un alias Route53
È possibile associare o dissociare un endpoint VPC da una REST API privata. Per ulteriori informazioni, consulta (Facoltativo) Associazione o dissociazione di un endpoint VPC da una REST API privata.
Dopo aver associato gli endpoint VPC alla tua API privata, puoi utilizzare il seguente URL di base per invocare l'API:
https://
{rest-api-id}
-{vpce-id}
.execute-api.{region}
.amazonaws.com/{stage}
Ad esempio, se hai configurato il metodo GET /pets
per la fase test
e se l'ID REST API era 01234567ab
, il tuo ID endpoint VPC era vpce-01234567abcdef012
e la Regione era us-west-2
, puoi invocare la tua API come:
curl -v https://01234567ab-vpce-01234567abcdef012.execute-api.us-west-2.amazonaws.com/test/pets
Invocazione di un'API privata utilizzando i nomi DNS privati
Se hai abilitato il DNS privato, puoi accedere all'API privata utilizzando i seguenti nomi DNS privati:
{restapi-id}
.execute-api.{region}
.amazonaws.com
L'URL di richiamata di base dell'API è nel formato seguente:
https://
{restapi-id}
.execute-api.{region}
.amazonaws.com/{stage}
Ad esempio, se hai configurato il metodo GET /pets
per la fase test
e se l'ID REST API era 01234567ab
e la tua Regione era us-west-2
, puoi invocare la tua API privata inserendo il seguente URL in un browser:
https://01234567ab.execute-api.us-west-2.amazonaws.com/test/pets
In alternativa, puoi utilizzare il seguente comando cURL per invocare l'API privata:
curl -X GET https://01234567ab.execute-api.us-west-2.amazonaws.com/test/pets
avvertimento
Se abiliti il DNS privato per il tuo endpoint VPC, non sarai in grado di accedere all'endpoint pubblico predefinito. APIs Per ulteriori informazioni, consulta Perché non riesco a connettere un endopoint VPC di API Gateway alla mia API pubblica?
Invoca un'API privata utilizzando AWS Direct Connect
Puoi utilizzarlo AWS Direct Connect per stabilire una connessione privata dedicata da una rete locale ad Amazon VPC e accedere al tuo endpoint API privato tramite tale connessione utilizzando nomi DNS pubblici.
Puoi anche utilizzare nomi DNS privati per accedere alla tua API privata da una rete locale configurando un endpoint in Amazon Route 53 Resolver entrata e inoltrando tutte le query DNS del DNS privato dalla tua rete remota. Per ulteriori informazioni, consulta Inoltro delle query DNS in entrata al tuo indirizzo nella Amazon Route 53 VPCs Developer Guide.
Invocazione di un'API privata tramite nomi host DNS pubblici specifici dell'endpoint
Puoi accedere all'API privata tramite nomi host DNS specifici dell'endpoint Si tratta di nomi host del DNS pubblico che contengono l'ID dell'endpoint VPC o l'ID dell'API per la tua API privata.
L'URL di base generato è nel formato seguente:
https://
{public-dns-hostname}
.execute-api.{region}
.vpce.amazonaws.com/{stage}
Ad esempio, se hai impostato il GET /pets
metodo per lo test
stage e il tuo ID API REST eraabc1234
, il suo hostname DNS pubblico era e la tua regione sì vpce-def-01234567
us-west-2
, puoi richiamare la tua API privata utilizzando il suo VPCe ID utilizzando l'Host
intestazione in un comando cURL:
curl -v https://vpce-def-01234567.execute-api.us-west-2.vpce.amazonaws.com/test/pets -H 'Host: abc1234.execute-api.us-west-2.amazonaws.com'
In alternativa, puoi invocare la tua API privata tramite il relativo ID utilizzando l'intestazione x-apigw-api-id
in un comando cURL con il seguente formato:
curl -v https://
{public-dns-hostname}
.execute-api.{region}
.vpce.amazonaws.com/{stage}
-H 'x-apigw-api-id:{api-id}
'