Configurer un nom de domaine personnalisé optimisé pour les périphériques dans Gateway API - APIPasserelle Amazon

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configurer un nom de domaine personnalisé optimisé pour les périphériques dans Gateway API

Lorsque vous créez un nom de domaine personnalisé pour un domaine optimisé pour les périphériquesAPI, API Gateway configure une CloudFront distribution et un DNS enregistrement pour mapper le nom de API domaine au nom de domaine de CloudFront distribution. Les demandes relatives au API sont ensuite acheminées vers API Gateway via la distribution mappée CloudFront . Ce mappage concerne les API demandes liées au nom de domaine personnalisé à acheminer vers API Gateway via la distribution mappée CloudFront .

Considérations

Voici quelques points à prendre en compte pour votre nom de domaine personnalisé optimisé pour les périphériques.

  • Pour configurer un nom de domaine personnalisé optimisé pour les périphériques ou pour mettre à jour son certificat, vous devez être autorisé à mettre à jour CloudFront les distributions.

    Les autorisations suivantes sont requises pour mettre à jour CloudFront les distributions :

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCloudFrontUpdateDistribution", "Effect": "Allow", "Action": [ "cloudfront:updateDistribution" ], "Resource": [ "*" ] } ] }
  • Vous devez demander ou importer un certificat pour votre nom de domaine personnalisé optimisé pour les périphériques dans la région de l'est des États-Unis (Virginie du Nord). us-east-1

  • La CloudFront distribution créée par API Gateway est détenue par un compte spécifique à la région affilié API à Gateway. Lors du suivi des opérations visant à créer et à mettre à jour une telle CloudFront distribution dans CloudTrail, vous devez utiliser cet ID de compte API Gateway. Pour plus d’informations, consultez Enregistrez la création d'un nom de domaine personnalisé dans CloudTrail.

  • APIGateway prend en charge les noms de domaine personnalisés optimisés pour les périphériques en utilisant l'indication du nom du serveur (SNI) sur la CloudFront distribution. Pour plus d'informations sur l'utilisation de noms de domaine personnalisés sur une CloudFront distribution, notamment sur le format de certificat requis et la taille maximale de la longueur d'une clé de certificat, consultez Using Alternate Domain Names et HTTPS dans le manuel Amazon CloudFront Developer Guide

  • Un nom de domaine personnalisé optimisé pour les périphériques prend environ 40 minutes pour être prêt.

  • Après avoir créé votre nom de domaine personnalisé optimisé pour les périphériques, vous devez créer un DNS enregistrement pour associer le nom de domaine personnalisé au nom de CloudFront distribution.

Création d'un nom de domaine personnalisé optimisé pour les périphériques

La procédure suivante explique comment créer un nom de domaine personnalisé optimisé pour les périphériques pour un. API

AWS Management Console
  1. Connectez-vous à la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway.

  2. Sélectionnez Noms de domaine personnalisés dans le volet de navigation principal.

  3. Choisissez Créer.

  4. Pour Nom de domaine, entrez un nom de domaine.

  5. Pour TLSVersion minimale, sélectionnez une version.

  6. Sous Configuration du point de terminaison, pour le type de API point de terminaison, choisissez Edge optimisé.

  7. Pour ACMcertificat, choisissez-en unACM.

  8. Choisissez Créer un nom de domaine.

REST API
  1. Appelez domainname:create, en spécifiant le nom de domaine personnalisé et celui ARN d'un certificat stocké dans. AWS Certificate Manager

    L'APIappel réussi renvoie une 201 Created réponse contenant le certificat ARN ainsi que le nom de CloudFront distribution associé dans sa charge utile.

  2. Notez le nom CloudFront de domaine de distribution indiqué dans le résultat. Vous en aurez besoin à l'étape suivante pour définir la CNAME valeur du domaine personnalisé ou la cible d'alias d'enregistrement A dans votreDNS.

Pour des exemples de code de cet REST API appel, consultez domainname:create.

Il faut environ 40 minutes pour qu'un nom de domaine personnalisé optimisé pour les périphériques soit prêt, mais la console affiche immédiatement le nom de domaine de CloudFront distribution associé, sous la forme dedistribution-id.cloudfront.net, avec le certificat. ARN En attendant, vous pouvez passer à l'étape suivante et configurer l'alias d'DNSenregistrement pour mapper le nom de domaine personnalisé au nom de domaine de CloudFront distribution associé.

Créez un DNS enregistrement pour votre nom de domaine personnalisé optimisé pour les périphériques

Après avoir lancé la création de votre nom de domaine personnalisé optimisé pour les périphériques, configurez l'alias d'DNSenregistrement.

Nous vous recommandons d'utiliser Route 53 pour créer un alias d'enregistrement A pour votre nom de domaine personnalisé et de spécifier le nom de domaine de CloudFront distribution comme cible de l'alias. Cela signifie que Route 53 peut acheminer votre nom de domaine personnalisé, même s'il s'agit d'une zone apex. Pour de plus amples informations, veuillez consulter Choix entre des jeux d'enregistrements de ressources avec ou sans alias dans le guide du développeur Amazon Route 53.

Vous pouvez plutôt ajouter votre domaine personnalisé à la zone hébergée en tant que jeu d'enregistrements de CNAME ressources. Le nom de l'CNAMEenregistrement indique le nom de domaine personnalisé que vous avez saisi précédemment dans Nom de domaine (par exemple,api.example.com). La valeur d'CNAMEenregistrement indique le nom de domaine de la CloudFront distribution.

Toutefois, l'utilisation d'un CNAME enregistrement ne fonctionnera pas si votre domaine personnalisé est une zone apex (c'est-à-dire example.com au lieu deapi.example.com). Une zone apex est généralement appelée le domaine racine de votre organisation. Pour un apex de zone, vous devez utiliser un alias d'enregistrement A, à condition qu'il soit pris en charge par votre DNS fournisseur.

Pour obtenir des instructions relatives à Amazon Route 53, consultez la section Acheminer le trafic vers un Amazon API Gateway en API utilisant votre nom de domaine dans le guide du développeur Amazon Route 53.

Enregistrez la création d'un nom de domaine personnalisé dans CloudTrail

Lorsqu'il CloudTrail est activé pour enregistrer les appels de API passerelle effectués par votre compte, API Gateway enregistre les mises à jour de CloudFront distribution associées lorsqu'un nom de domaine personnalisé est créé ou mis à jour pour unAPI. Ces journaux sont disponibles dansus-east-1. Ces CloudFront distributions étant détenues par API Gateway, chacune des CloudFront distributions signalées est identifiée par l'un des comptes API Gateway spécifiques à la région suivantsIDs, au lieu de l'identifiant de compte du API propriétaire.

Région

ID de compte

us-east-1 392220576650
us-east-2 718770453195
us-west-1 968246515281
us-west-2 109351309407
ca-central-1 796887884028
eu-west-1 631144002099
eu-west-2 544388816663
eu-west-3 061510835048
eu-central-1 474240146802
eu-central-2 166639821150
eu-north-1 394634713161
eu-south-1 753362059629
eu-south-2 359345898052
ap-northeast-1 969236854626
ap-northeast-2 020402002396
ap-northeast-3 360671645888
ap-southeast-1 195145609632
ap-southeast-2 798376113853
ap-southeast-3 652364314486
ap-southeast-4 849137399833
ap-south-1 507069717855
ap-south-2 644042651268
ap us-east-1 174803364771
sa-east-1 287228555773
me-south-1 855739686837
me-central-1 614065512851

Configurer le mappage du chemin de base d'un API avec un nom de domaine personnalisé comme nom d'hôte

Vous pouvez utiliser le mappage de chemins de base pour utiliser un seul nom de domaine personnalisé comme nom d'hôte de plusieursAPIs. Cela rend un API accessible grâce à la combinaison du nom de domaine personnalisé et du chemin de base associé.

Par exemple, si dans API Gateway, vous avez créé un API nom PetStore et un autre API nom, Dogs puis que vous avez configuré un nom de domaine personnalisé deapi.example.com, vous pouvez définir le « PetStore API s https://api.example.com » URL comme.

Cela PetStore API associe le au chemin de base d'une chaîne vide. Si vous définissez les PetStore API s URL commehttps://api.example.com/PetStore, cela les PetStore API associe au chemin de base dePetStore. Vous pouvez attribuer un chemin de base MyDogList pour le DogsAPI. Le URL de https://api.example.com/MyDogList est alors la racine URL du DogsAPI.

Pour configurer API des mappages à plusieurs niveaux, vous ne pouvez utiliser qu'un nom de domaine personnalisé régional. Les noms de domaine personnalisés optimisés pour Edge ne sont pas pris en charge. Pour plus d’informations, consultez Associez API les étapes à un nom de domaine personnalisé pour REST APIs.

La procédure suivante configure les API mappages pour mapper les chemins entre votre nom de domaine personnalisé et vos API étapes.

AWS Management Console
  1. Connectez-vous à la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway.

  2. Choisissez Noms de domaine personnalisés dans le volet de navigation principal de la console API Gateway.

  3. Choisissez un nom de domaine personnalisé.

  4. Choisissez Configurer les API mappages.

  5. Choisissez Ajouter un nouveau mappage.

  6. Spécifiez APIle stade et le chemin (facultatif) pour le mappage.

  7. Choisissez Enregistrer.

REST API

Appelez basepathmapping:create sur un nom de domaine personnalisé donné, en spécifiant le basePath, restApiId et une propriété stage de déploiement dans la charge utile de la demande.

L'APIappel réussi renvoie une 201 Created réponse.

Pour des exemples de code de l'RESTAPIappel, consultez basepathmapping:create.

Rotation d'un certificat importé dans ACM

ACMgère automatiquement le renouvellement des certificats qu'il émet. Il n'est pas nécessaire de faire alterner les certificats ACM émis pour vos noms de domaine personnalisés. CloudFront le gère en votre nom.

Toutefois, si vous importez un certificat ACM et que vous l'utilisez pour un nom de domaine personnalisé, vous devez effectuer une rotation du certificat avant son expiration. Cela implique d'importer un nouveau certificat tiers pour le nom de domaine et d'effectuer la rotation du certificat existant vers le nouveau. Vous devez répéter ce processus lorsque le certificat nouvellement importé arrive à expiration. Vous pouvez également demander l'émission ACM d'un nouveau certificat pour le nom de domaine et remplacer le certificat existant par le nouveau certificat ACM émis. Ensuite, vous pouvez partir ACM et CloudFront gérer automatiquement la rotation des certificats pour vous. Pour créer ou importer un nouveau ACM certificat, suivez les étapes décrites dansPour créer ou importer un TLS certificatSSL/dans ACM.

La procédure suivante décrit comment faire pivoter un certificat pour un nom de domaine.

Note

Il faut environ 40 minutes pour faire pivoter un certificat importé dansACM.

AWS Management Console
  1. Demandez ou importez un certificat dansACM.

  2. Connectez-vous à la console API Gateway à l'adresse https://console.aws.amazon.com/apigateway.

  3. Choisissez Noms de domaine personnalisés dans le volet de navigation principal de la console API Gateway.

  4. Choisissez un nom de domaine personnalisé.

  5. Choisissez Modifier.

  6. Choisissez le certificat souhaité dans la liste déroulante des ACMcertificats.

  7. Sélectionnez Save pour commencer la rotation du certificat pour le nom de domaine personnalisé.

  8. Une fois la rotation terminée, vous pouvez cliquer sur l'icône représentant une flèche bidirectionnelle à côté de ACMCertificat pour revenir au certificat d'origine.

REST API

Appelez l'action domainname:update, en spécifiant le nouveau ACM certificat pour le nom ARN de domaine spécifié.

Appelez votre nom de domaine API avec des noms de domaine personnalisés

Appeler un API avec un nom de domaine personnalisé revient à appeler un API avec son nom de domaine par défaut, à condition que le nom correct URL soit utilisé.

Les exemples suivants comparent et contrastent un ensemble de valeurs par défaut URLs et URLs de personnalisation correspondantes de deux APIs (udxjefetqf3duz) dans une région spécifiée (us-east-1), et d'un nom de domaine personnalisé donné (api.example.com).

ID API Étape Par défaut URL Chemin de base Personnalisé URL
udxjef prod https://udxjef.execute-api.us-east-1.amazonaws.com/prod /petstore https://api.example.com/petstore
udxjef tst https://udxjef.execute-api.us-east-1.amazonaws.com/tst /petdepot https://api.example.com/petdepot
qf3duz dev https://qf3duz.execute-api.us-east-1.amazonaws.com/dev /bookstore https://api.example.com/bookstore
qf3duz tst https://qf3duz.execute-api.us-east-1.amazonaws.com/tst /bookstand https://api.example.com/bookstand

APIGateway prend en charge les noms de domaine personnalisés pour et API en utilisant l'indication du nom du serveur (SNI). Vous pouvez appeler le API avec un nom de domaine personnalisé à l'aide d'un navigateur ou d'une bibliothèque cliente compatibleSNI.

APIGateway s'applique SNI à la CloudFront distribution. Pour plus d'informations sur l' CloudFront utilisation des noms de domaine personnalisés, consultez Amazon CloudFront Custom SSL.