Nomi di dominio personalizzati per REST API pubbliche in Gateway API
I nomi di dominio personalizzati sono URL più semplici e più intuitivi che è possibile fornire agli utenti delle API.
Dopo aver distribuito un'API, tu e i tuoi clienti potete richiamarla usando l'URL di base predefinito nel formato seguente:
https://
api-id
.execute-api.region
.amazonaws.com/stage
dove api-id
è generato da Gateway API, region
è la Regione AWS e stage
è il valore che è stato specificato al momento dell'implementazione dell'API.
La parte del nome host dell'URL,
, fa riferimento a un endpoint API. Il nome dell'endpoint API predefinito viene generato casualmente, è complesso da richiamare e non è intuitivo.api-id
.execute-api.region
.amazonaws.com
Con i nomi di dominio personalizzati, è possibile impostare il nome host dell'API e scegliere un percorso base (ad esempio myservice
) per mappare l'URL alternativo all'API. Ad esempio, un URL di base dell'API più intuitivo può diventare:
https://api.example.com/myservice
Nota
Per informazioni sui nomi di dominio personalizzati per le API private, consulta Nomi di dominio personalizzati per API private in Gateway API.
Considerazioni
Le seguenti considerazioni potrebbero influire sull'utilizzo di un nome di dominio personalizzato.
-
È possibile disabilitare l'endpoint predefinito per un'API. I client possono comunque connettersi all'endpoint predefinito, ma riceveranno un codice di stato
403 Forbidden
. -
Un nome di dominio personalizzato regionale può essere associato alle REST API e alle API HTTP. È possibile utilizzare le API di Gateway API Versione 2 per creare e gestire nomi di dominio personalizzati regionali per le REST API.
-
Un nome di dominio personalizzato deve essere univoco in una Regione per tutti gli account AWS.
-
È possibile eseguire la migrazione di un nome di dominio personalizzato tra endpoint ottimizzati per l'edge e regionali, ma non la migrazione di un dominio personalizzato pubblico a un nome di dominio personalizzato privato.
-
È necessario creare o aggiornare il record di risorse del provider DNS per eseguire la mappatura all'endpoint API. In assenza di questa mappatura, le richieste API destinate al nome di dominio personalizzato non possono raggiungere API Gateway.
-
È possibile supportare un numero pressoché infinito di nomi di dominio senza superare la quota predefinita con un certificato jolly. Per ulteriori informazioni, consultare Nomi di dominio personalizzati con caratteri jolly.
-
Puoi scegliere una policy di sicurezza per il dominio personalizzato. Per ulteriori informazioni, consultare Scelta di una policy di sicurezza per il dominio personalizzato REST API in Gateway API.
-
Per configurare le mappature API con più livelli, è necessario utilizzare un nome di dominio personalizzato regionale e la policy di sicurezza TLS 1.2.
Prerequisiti per i nomi di dominio personalizzati
Di seguito sono riportati i prerequisiti per la creazione di un nome di dominio personalizzato pubblico o privato. Per informazioni sui nomi di dominio personalizzati per le API private, consulta Nomi di dominio personalizzati per API private in Gateway API.
Registrare un nome di dominio
Per configurare nomi di dominio personalizzati per le API, devi avere un nome di dominio Internet registrato. Puoi registrare un nome di dominio Internet utilizzando Amazon Route 53 oppure un registrar di dominio di terze parti a tua scelta. Il nome di dominio personalizzato può essere il nome di un sottodominio o del dominio root (detto anche "apex di zona") di un dominio Internet registrato.
Il nome di dominio deve seguire la specifica RFC 1035
Impostazione del certificato per il nome di dominio personalizzato
Prima di configurare un nome di dominio personalizzato per un'API, è necessario che sia già presente un certificato SSL/TLS in ACM. Se ACM non è disponibile nella Regione AWS in cui si sta creando il nome di dominio personalizzato, è necessario importare nella Regione un certificato in Gateway API.
Per importare un certificato SSL/TLS, devi fornire il corpo del certificato SSL/TLS in formato PEM, la sua chiave privata e la catena di certificati per il nome di dominio personalizzato.
Ogni certificato archiviato in ACM è identificato dal relativo ARN. Con i certificati emessi da ACM, non devi preoccuparti di esporre dettagli sensibili del certificato, come la chiave privata. Per usare un certificato gestito da AWS per un nome di dominio, devi semplicemente fare riferimento al relativo ARN.
Se l’applicazione utilizza il blocco dei certificati, talvolta denominato associazione SSL, per associare un certificato ACM, è possibile che l'applicazione non riesca a connettersi al tuo dominio dopo che AWS ha rinnovato il certificato. Per ulteriori informazioni, consulta Probemi nel blocco dei certificati nella Guida per l'utente di AWS Certificate Manager.
Nomi di dominio personalizzati con caratteri jolly
Con i nomi di dominio personalizzati con caratteri jolly, è possibile supportare un numero quasi infinito di nomi di dominio senza superare la quota predefinita. Ad esempio, è possibile dare a ciascuno dei clienti il proprio nome di dominio,
.customername
.api.example.com
Per creare un nome di dominio personalizzato con caratteri jolly, specificare un carattere jolly (*
) come primo sottodominio di un dominio personalizzato che rappresenta tutti i possibili sottodomini di un dominio radice.
Ad esempio, il nome di dominio personalizzato con caratteri jolly *.example.com
genera sottodomini quali a.example.com
, b.example.com
e c.example.com
, indirizzati tutti allo stesso dominio.
I nomi di dominio personalizzati con caratteri jolly supportano configurazioni distinte dai nomi di dominio personalizzati standard di API Gateway. Ad esempio, in un singolo account AWS, è possibile configurare *.example.com
e a.example.com
affinché si comportino in modo diverso.
È possibile utilizzare le variabili di contesto $context.domainName
e $context.domainPrefix
per determinare il nome di dominio utilizzato da un client per chiamare l'API. Per ulteriori informazioni sulle variabili di contesto, consulta Informazioni di riferimento sui modelli di mappatura e sulle variabili di logging degli accessi in API Gateway.
Per creare un nome di dominio personalizzato con caratteri jolly, è necessario fornire un certificato emesso da ACM che sia stato convalidato utilizzando il DNS o il metodo di convalida della posta elettronica.
Nota
Non è possibile creare un nome di dominio personalizzato con caratteri jolly se un account AWS diverso ha creato un nome di dominio personalizzato in conflitto con il nome di dominio personalizzato con caratteri jolly. Ad esempio, se l'account A ha creato a.example.com
, l'account B non può creare il nome di dominio personalizzato con caratteri jolly *.example.com
.
Se l'account A e l'account B condividono un proprietario, è possibile contattare il Centro assistenza AWS
Passaggi successivi per nomi di dominio personalizzati
Di seguito sono riportati i passaggi successivi per i nomi di dominio personalizzati:
Passaggi successivi
-
Per informazioni su come impostare il certificato SSL/TLS, consulta Preparazione dei certificati in AWS Certificate Manager.
-
Per informazioni su come creare un dominio personalizzato regionale, consulta Configurazione di un nome di dominio personalizzato regionale in Gateway API.
-
Per informazioni su come creare un dominio personalizzato ottimizzato per l'edge, consulta Configurazione di un nome di dominio personalizzato ottimizzato per l'edge in Gateway API.
-
Per informazioni su come eseguire la migrazione tra nomi di dominio personalizzati regionali e ottimizzati per l'edge, consulta Migrazione di un nome di dominio personalizzato a un tipo di endpoint API diverso in Gateway API.
-
Per informazioni su come connettere le fasi API a un nome di dominio personalizzato, consulta Mappatura delle fasi API a un nome di dominio personalizzato per le REST API.
-
Per informazioni su come scegliere una policy di sicurezza per il dominio personalizzato, consulta Scelta di una policy di sicurezza per il dominio personalizzato REST API in Gateway API.
-
Per informazioni su come disattivare l'endpoint predefinito per il nome di dominio personalizzato, consulta Disabilitazione dell'endpoint predefinito per REST API.
-
Per informazioni su come utilizzare i controlli dell'integrità di Route 53 per controllare il failover DNS da un'API di Gateway API, consulta Configurazione dei controlli dell'integrità personalizzati per failover DNS per un'API di Gateway API.
Se è la prima volta che crei un nome di dominio personalizzato, ti consigliamo di iniziare con Preparazione dei certificati in AWS Certificate Manager, per specificare il certificato, quindi Configurazione di un nome di dominio personalizzato regionale in Gateway API per creare un nome di dominio personalizzato regionale.