Configuración de un nombre de dominio personalizado optimizado para la periferia para en API Gateway
Cuando crea un nombre de dominio personalizado para una API optimizada para la periferia, API Gateway configura una distribución de Amazon CloudFront y un registro de DNS para asignar el nombre de dominio de API al nombre de dominio de distribución de CloudFront. Las solicitudes para la API se redirigen a API Gateway a través de la distribución de CloudFront asignada. Este mapeo es para solicitudes de API que estén enlazadas para que el nombre de dominio personalizado se dirija a API Gateway a través de la distribución de CloudFront asignada.
Consideraciones
Las siguientes son consideraciones para su nombre de dominio personalizado optimizado para la periferia.
-
Para configurar un nombre de dominio personalizado optimizado para bordes o para actualizar su certificado, debe tener permiso para actualizar las distribuciones de CloudFront.
Se requieren los siguientes permisos para actualizar las distribuciones de CloudFront:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCloudFrontUpdateDistribution", "Effect": "Allow", "Action": [ "cloudfront:updateDistribution" ], "Resource": [ "*" ] } ] }
-
Debe solicitar o importar un certificado para su nombre de dominio personalizado optimizado para la periferia en la región Este de EE. UU. (Norte de Virginia) -
us-east-1
. -
La distribución de CloudFront que ha creado API Gateway es propiedad de un cuenta específica de la región afiliada a API Gateway. Cuando realice un seguimiento de las operaciones para crear y actualizar esta distribución de CloudFront en CloudTrail, deberá utilizar este ID de cuenta de API Gateway. Para obtener más información, consulte Registro de la creación del nombre de dominio personalizado en CloudTrail.
-
API Gateway admite nombres de dominio personalizados optimizados para bordes mediante la indicación de nombre de servidor (SNI) en la distribución de CloudFront. Para obtener más información acerca de cómo usar nombres de dominio personalizados en una distribución de CloudFront, incluido el formato de certificado necesario y el tamaño máximo de una longitud de clave de certificado, consulte Uso de nombres de dominio alternativos y HTTPS en la Guía para desarrolladores de Amazon CloudFront.
-
Un nombre de dominio personalizado optimizado para la periferia tarda unos 40 minutos en estar listo.
-
Una vez creado su nombre de dominio personalizado optimizado para la periferia, debe crear un registro de DNS para asignar el nombre de dominio personalizado al nombre de distribución de CloudFront.
Creación de un nombre de dominio personalizado optimizado para la periferia
El siguiente procedimiento describe cómo crear un nombre de dominio personalizado optimizado para la periferia para una API.
Un nombre de dominio personalizado optimizado para la periferia tarda unos 40 minutos en estar listo, pero la consola mostrará inmediatamente el nombre de dominio de distribución de CloudFront asociado, con el formato
, junto con el ARN del certificado. Mientras tanto, puede continuar con el siguiente paso y configurar el alias de registro de DNS para asignar el nombre de dominio personalizado al nombre de dominio de distribución de CloudFront asociado.distribution-id
.cloudfront.net
Creación de un registro de DNS para el nombre de dominio personalizado optimizado para la periferia
Después de iniciar la creación de su nombre de dominio personalizado optimizado para la periferia, configure el alias de registro de DNS.
Le recomendamos que use Route 53 para crear un alias de registro A para su nombre de dominio personalizado y especificar el nombre de dominio de distribución de CloudFront como el alias de destino. Esto significa que Route 53 pueden enrutar su nombre de dominio personalizado aunque se trate de un ápex de zona. Para obtener más información, consulte Elección entre registros de alias y sin alias en la guía para desarrolladores de Amazon Route 53.
Para obtener instrucciones sobre Amazon Route 53, consulte Routing traffic to an Amazon API Gateway API by using your domain name en la Guía para desarrolladores de Amazon Route 53.
Registro de la creación del nombre de dominio personalizado en CloudTrail
Cuando CloudTrail está habilitado para registrar llamadas de API Gateway realizadas por su cuenta, API Gateway registra las actualizaciones de la distribución de CloudFront asociadas cuando se crea o se actualiza un nombre de dominio personalizado para una API. Estos registros están disponibles en us-east-1
. Como estas distribuciones de CloudFront son propiedad de API Gateway, cada una de estas distribuciones de CloudFront registradas se identifican mediante uno de los siguientes ID de cuenta de API Gateway específicos de cada región, en lugar de mediante el ID de la cuenta del propietario de la API.
Region |
ID de cuenta |
---|---|
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-east-1 | 174803364771 |
sa-east-1 | 287228555773 |
me-south-1 | 855739686837 |
me-central-1 | 614065512851 |
Configurar el mapeo de ruta base de una API con un nombre de dominio personalizado como su nombre de host
Puede usar la asignación de ruta base para utilizar un único nombre de dominio personalizado como el nombre de host de varias API. De este modo, una API estará accesible a través de la combinación del nombre de dominio personalizado y la ruta base asociada.
Por ejemplo, si en API Gateway creó una API llamada PetStore
y otra API con el nombre Dogs
, y configuró un nombre de dominio personalizado de api.example.com
, puede establecer la URL de la API PetStore
como https://api.example.com
.
Esto asocia la API PetStore
con la ruta base de una cadena vacía. Si establece la URL de la API PetStore
como https://api.example.com/PetStore
, se asocia la API PetStore
a la ruta base de PetStore
. Puede asignar una ruta base de MyDogList
para la API Dogs
. La dirección URL de https://api.example.com/MyDogList
es entonces la URL raíz de la API Dogs
.
Para configurar las asignaciones de API en varios niveles, solo puede usar un nombre de dominio personalizado regional. No se admiten los nombres de dominio personalizados optimizados para la periferia. Para obtener más información, consulte Asignación de etapas de API a un nombre de dominio personalizado para las API de REST.
El siguiente procedimiento configura asignaciones de API para asignar rutas desde el nombre de dominio personalizado a las etapas de API.
Rotación de un certificado importado en ACM
ACM se encarga automáticamente de renovar los certificados que emite. No necesita rotar ningún certificado emitido por ACM para los nombres de dominio personalizados. CloudFront lo gestiona por usted.
No obstante, si importa un certificado en ACM y lo usa para un nombre de dominio personalizado, debe rotar el certificado antes de que venza. Esto implica importar un nuevo certificado de terceros para el nombre de dominio y reemplazar el certificado existente por el nuevo. Necesita repetir el proceso cuando el certificado que acaba de importar venza. De forma alternativa, puede solicitar a ACM que emita un nuevo certificado para el nombre de dominio y reemplazar el existente por el nuevo certificado emitido por ACM. A partir de entonces, puede dejar que ACM y CloudFront se ocupen de administrar la rotación de certificados automáticamente. Para crear o importar un nuevo certificado de ACM, siga los pasos de Creación o importación de un certificado SSL/TLS en ACM.
En el siguiente procedimiento se describe cómo rotar un certificado para un nombre de dominio.
nota
Se tarda unos 40 minutos en rotar un certificado importado a ACM.
Llamar a la API con nombres de dominio personalizados
Llamar a una API con un nombre de dominio personalizado es lo mismo que llamar a la API con su nombre de dominio predeterminado, siempre que se use la URL correcta.
En los siguientes ejemplos se compara y se contrasta un conjunto de direcciones URL predeterminadas y las URL personalizadas correspondientes de dos API (udxjef
y qf3duz
) en una región especificada (us-east-1
) y de un nombre de dominio personalizado (api.example.com
) especificado.
ID de API | Etapa | URL predeterminada | Ruta base | URL personalizada |
---|---|---|---|---|
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 |
API Gateway admite nombres de dominio personalizados para una API mediante el uso de la indicación de nombre de servidor (SNI)
API Gateway aplica SNI en la distribución CloudFront. Para obtener información sobre cómo CloudFront utiliza nombres de dominio personalizados, consulte Certificados SSL personalizados de Amazon CloudFront