Agence web » Actualités du digital » Comment configurer un domaine personnalisé pour la passerelle API AWS

Comment configurer un domaine personnalisé pour la passerelle API AWS

La passerelle API d'AWS est idéale comme interface pour les fonctions Lambda et d'autres services AWS. Cependant, le point de terminaison par défaut est un sous-domaine d'Amazonaws.com, qui n'est pas convivial. Nous allons vous montrer comment réparer et configurer un domaine personnalisé.

Demande d'un certificat à ACM et à Link API Gateway

Vous devez posséder le nom de domaine que vous souhaitez utiliser pour l'API. Vous voudrez probablement mettre cela sur un sous-domaine comme api.example.com. Pour ce faire, vous devez faire deux choses: demander un certificat SSL à AWS Certificate Manager (ACM) pour sécuriser les demandes adressées à l'API et mettre à jour votre configuration DNS pour pointer vers API Gateway.

Connectez-vous et accédez à la console ACM. À partir d'ici, sélectionnez «Demander un certificat» et spécifiez «Public» comme type.

Ensuite, entrez les noms de domaine que vous souhaitez utiliser pour ce certificat. Vous pouvez ajouter plusieurs domaines ici, mais un est probablement suffisant, car les étapes de l'API sont de toute façon divisées par sous-URL.

Vous avez deux options pour la validation. Le premier vous demandera de mettre à jour votre configuration DNS avec un enregistrement CNAME. Le second enverra un e-mail de vérification à l'e-mail que vous avez en contact pour le domaine. Cela ne fonctionnera pas si votre e-mail n'est pas visible depuis who.is, ce qui se produira si vous avez une protection WhoisGuard.

La configuration DNS est assez simple, nous allons donc continuer avec ça. L'écran suivant vous montrera le nom et la valeur de l'enregistrement que vous devrez écrire. Si vous utilisez Route 53, le propre registraire de domaine et service DNS d'Amazon, ce processus est automatique et vous pouvez simplement appuyer sur «Créer un enregistrement sur Route 53» pour le faire pour vous.

La propagation des modifications peut prendre quelques minutes si vous utilisez un registraire tiers. Une fois validé, votre certificat devrait passer à «Émis» et sera prêt à être lié à API Gateway.

Basculez vers la console API Gateway et cliquez sur «Noms de domaine personnalisés» dans la barre latérale. Créez-en un nouveau, entrez votre nom de domaine et sélectionnez le certificat que vous venez de créer. Vous devez également vous assurer que le type d'API correct est sélectionné.

Cliquez sur créer et un nouveau domaine devrait apparaître dans la liste. Cliquez sur «Modifier» pour ajouter un mappage de chemin. Cela liera un sous-domaine spécifique (par exemple, api.example.com/v1/) à l'API et à l'étape que vous choisissez.

Ce serait probablement une bonne idée de créer des chemins différents pour différentes étapes de l'API, comme un chemin de développement pour le $default étape, et un chemin de production pour l'étape face à l'utilisateur.

Une fois créé, copiez la valeur «Nom de domaine cible». Voici ce dont vous aurez besoin pour mettre à jour la configuration DNS (pas le point de terminaison API lui-même)

Lier votre DNS à la passerelle API

Vous remarquerez à ce stade que si vous visitez l'URL dans votre navigateur, rien ne se passera. API Gateway est configuré pour utiliser votre domaine en toute sécurité, mais il ne reçoit aucun trafic car le DNS ne pointe personne vers n'importe où.

Pour les DNS tiers, vous devrez utiliser un enregistrement CNAME. Cela mappe un nom de domaine à un autre nom de domaine, mais nécessite une recherche DNS supplémentaire. Collez la valeur «Nom de domaine cible» pour le domaine personnalisé que vous avez configuré dans API Gateway.

api.example.com CNAME api-id.execute-api.region.amazonaws.com/stage

Si vous utilisez Route 53, la configuration est plus simple. Vous pouvez obtenir le même effet en une seule recherche en utilisant un jeu d'enregistrements A en mode «Alias», un type d'enregistrement spécial qui vous permet de mapper l'enregistrement directement sur un nom de ressource AWS. Sélectionnez simplement l'API dans la liste déroulante et cliquez sur créer.

Les modifications prendront un peu de temps à se propager, mais votre API devrait maintenant être disponible à partir de votre nom de domaine. Si cela ne fonctionne pas, vérifiez que vous vous connectez via HTTPS, car il n'acceptera pas les connexions non sécurisées.

★★★★★