Uso de un dominio propio con la IU alojada - Amazon Cognito

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de un dominio propio con la IU alojada

Tras configurar un cliente de aplicaciones, puede configurar su grupo de usuarios con un dominio personalizado para la interfaz de usuario alojada en Amazon Cognito y los puntos finales del servidor de autorización. Con un dominio personalizado, los usuarios pueden iniciar sesión en tu aplicación con tu propia dirección web en lugar del dominio predeterminado de Amazon Cognito. Los dominios personalizados mejoran la confianza de los usuarios en la aplicación con un nombre de dominio conocido, especialmente cuando el dominio raíz coincide con el dominio que aloja la aplicación. Los dominios personalizados también pueden cumplir con los requisitos de seguridad de la organización.

Un dominio personalizado tiene algunos requisitos previos, como un grupo de usuarios, un cliente de aplicaciones y un dominio web de tu propiedad. Los dominios personalizados también requieren un SSL certificado para el dominio personalizado, que se administra con AWS Certificate Manager (ACM) en EE. UU. Este (Norte de Virginia). Amazon Cognito crea una CloudFront distribución de Amazon, asegurada en tránsito con su ACM certificado, que debe ser el DNS alias objetivo de su nombre de dominio personalizado.

Cuando estos elementos estén listos, puede añadir el dominio personalizado a su grupo de usuarios a través de la consola de Amazon Cognito o. API Esto implica especificar el nombre de dominio y el SSL certificado y, a continuación, actualizar la DNS configuración con el alias de destino proporcionado. Tras realizar estos cambios, puedes comprobar que se puede acceder a la página de inicio de sesión en tu dominio personalizado.

Adición de un dominio personalizado a un grupo de usuarios

Para añadir un dominio personalizado a su grupo de usuarios, especifique el nombre de dominio en la consola de Amazon Cognito y proporcione un certificado que gestione con AWS Certificate Manager()ACM. Después de añadir el dominio, Amazon Cognito proporciona un alias objetivo que se añade a la configuraciónDNS.

Requisitos previos

Antes de comenzar, necesitará:

  • Un grupo de usuarios con un cliente de aplicación. Para obtener más información, consulte Introducción a los grupos de usuarios.

  • Un dominio web de su propiedad. Su dominio principal debe tener un registro DNS A válido. Puede asignar cualquier valor a este registro. El elemento principal puede ser la raíz del dominio o un dominio secundario que esté un paso más arriba en la jerarquía de dominios. Por ejemplo, si el dominio personalizado es auth.xyz.example.com, Amazon Cognito debe poder resolver xyz.example.com a una dirección IP. Para evitar un impacto accidental en la infraestructura del cliente, Amazon Cognito no admite el uso de dominios de nivel superior (TLDs) para dominios personalizados. Para obtener más información, consulte Nombres de dominio.

  • Tener la capacidad para crear un subdominio en el dominio personalizado. Recomendamos utilizar auth como subdominio. Por ejemplo: auth.example.com.

    nota

    Si no dispone de un certificado comodín, es posible que tenga que obtener un nuevo certificado para el subdominio del dominio personalizado.

  • Un certificado Secure Sockets Layer (SSL) administrado por. ACM

    nota

    Debe cambiar la AWS región a EE.UU. Este (Virginia del Norte) en la ACM consola antes de solicitar o importar un certificado.

  • Una aplicación que permite al servidor de autorización de su grupo de usuarios añadir cookies a las sesiones de los usuarios. Amazon Cognito establece varias cookies obligatorias para la interfaz de usuario alojada. Entre ellos se encuentran cognito, cognito-fl y XSRF-TOKEN. Si bien cada cookie individual se ajusta a los límites de tamaño del navegador, los cambios en la configuración del grupo de usuarios pueden provocar que las cookies de la interfaz de usuario alojada aumenten de tamaño. Un servicio intermedio, como Application Load Balancer (ALB), delante de tu dominio personalizado puede imponer un tamaño máximo de encabezado o un tamaño total de cookie. Si tu aplicación también establece sus propias cookies, es posible que las sesiones de tus usuarios superen estos límites. Te recomendamos que, para evitar conflictos con los límites de tamaño, tu aplicación no establezca cookies en el subdominio de la interfaz de usuario alojada.

  • Permiso para actualizar las CloudFront distribuciones de Amazon. Puedes hacerlo adjuntando la siguiente declaración de IAM política a un usuario en tu: Cuenta de AWS

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCloudFrontUpdateDistribution", "Effect": "Allow", "Action": [ "cloudfront:updateDistribution" ], "Resource": [ "*" ] } ] }

    Para obtener más información sobre la autorización de acciones en CloudFront, consulte Uso de políticas basadas en la identidad (políticas) IAM para. CloudFront

    Amazon Cognito utiliza inicialmente sus IAM permisos para configurar la CloudFront distribución, pero la gestión de la distribución corre a cargo de. AWS No puede cambiar la configuración de la CloudFront distribución que Amazon Cognito asoció a su grupo de usuarios. Por ejemplo, no puede actualizar las TLS versiones compatibles de la política de seguridad.

Paso 1: Introducir el nombre de dominio personalizado

Puede añadir su dominio a su grupo de usuarios mediante la consola de Amazon Cognito o. API

Amazon Cognito console
Para agregar un dominio al grupo de usuarios mediante la consola de Amazon Cognito:
  1. Inicie sesión en la consola de Amazon Cognito. Si se le solicita, escriba sus credenciales de AWS .

  2. Elija User pools (Grupos de usuarios).

  3. Elija el grupo de usuarios en el que desee agregar el dominio.

  4. Elija la pestaña App integration (Integración de aplicaciones).

  5. Junto a Domain (Dominio) , elijaActions (Acciones)y, después, elija Create custom domain (Crear dominio personalizado).

    nota

    Si ya ha configurado un dominio de grupo de usuarios, elija Delete Cognito domain (Eliminar dominio de Cognito) o Delete custom domain (Eliminar dominio personalizado) para eliminar el dominio existente antes de crear el nuevo dominio personalizado.

  6. En Dominio personalizado, introduzca URL el dominio que desee usar con Amazon Cognito. El nombre de dominio solo puede incluir letras minúsculas, números y guiones. No utilice un guion en el primer carácter ni en el último. Utilice puntos para separar los nombres de los subdominios.

  7. En el caso del ACMSSLcertificado, elija el certificado que desee usar para su dominio. Solo ACM los certificados de EE. UU. Este (Virginia del Norte) son aptos para su uso con un dominio personalizado de Amazon Cognito, independientemente del Región de AWS grupo de usuarios.

    Si no tiene un certificado disponible, puede utilizarlo ACM para aprovisionar uno en EE. UU. Este (Virginia del Norte). Para obtener más información, consulte la introducción de la Guía del usuario de AWS Certificate Manager .

  8. Seleccione Create (Crear).

  9. Amazon Cognito le devuelve a la pestaña App integration (Integración de aplicaciones). Aparece un mensaje titulado Crea un registro de DNS alias en tu dominio. Anote el Domain (Dominio) y el Alias Target (Destino de alias) que se muestra en la consola. Se utilizarán en el paso siguiente para dirigir el tráfico a su dominio personalizado.

API
Para añadir su dominio a su grupo de usuarios con Amazon CognitoAPI:

Paso 2: Agregar un destino de alias y un subdominio

En este paso, debe configurar un alias a través de su proveedor de servicios de servidor de nombres de dominio (DNS) que apunte al alias objetivo del paso anterior. Si utiliza Amazon Route 53 para la resolución de DNS direcciones, elija la sección Para añadir un alias, un destino y un subdominio mediante Route 53.

  • Si no usa Route 53 para la resolución de DNS direcciones, debe usar las herramientas de configuración de su proveedor de DNS servicios para agregar el alias objetivo del paso anterior al DNS registro de su dominio. Tu DNS proveedor también tendrá que configurar el subdominio para tu dominio personalizado.

  1. Inicie sesión en la consola de Route 53. Si se le solicita, escriba sus credenciales de AWS .

  2. Si no tiene una zona alojada pública en Route 53, cree una con una raíz que sea la principal de su dominio personalizado. Para obtener más información, consulte Creación de una zona alojada pública en la Guía para desarrolladores de Amazon Route 53.

    1. Elija Create Hosted Zone (Crear zona alojada).

    2. Introduzca el dominio principal, por ejemplo auth.example.com, de tu dominio personalizado, por ejemplo myapp.auth.example.com, de la lista de nombres de dominio.

    3. Introduzca una Descripción para su zona alojada.

    4. Elija una zona alojada Type (Tipo) de Public hosted zone (Zona alojada pública) para permitir que los clientes públicos resuelvan su dominio personalizado. Elegir una Private hosted zone (Zona alojada privada) no es compatible.

    5. Aplique Tags (Etiquetas) como desee.

    6. Elija Crear zona alojada.

      nota

      También puede crear una nueva zona alojada para su dominio personalizado con una delegación establecida en la zona alojada principal que dirija las consultas a la zona alojada del subdominio. De lo contrario, crea un registro A. Este método ofrece más flexibilidad y seguridad con las zonas alojadas. Para obtener más información, consulte Creating a subdomain for a domain hosted through Amazon Route 53 (Creación de un subdominio para un dominio alojado mediante Amazon Route 53).

  3. En la página Hosted Zones (Zonas alojadas), elija el nombre de la zona alojada.

  4. Agrega un DNS registro para el dominio principal de tu dominio personalizado, si aún no tienes uno. Crea un DNS registro para el dominio principal con las siguientes propiedades:

    • Nombre del registro: déjelo en blanco.

    • Tipo de registro:A.

    • Alias: no lo habilites.

    • Valor: introduce un objetivo de tu elección. Este registro debe convertirse en algo, pero el valor del registro no le importa a Amazon Cognito.

    • TTL: Configúrelo como preferido TTL o déjelo como predeterminado.

    • Política de enrutamiento: elija un enrutamiento simple.

  5. Elija Crear registros. El siguiente es un ejemplo de registro para el dominio example.com:

    example.com. 60 IN A 198.51.100.1

    nota

    Amazon Cognito verifica que haya un DNS registro para el dominio principal de su dominio personalizado a fin de protegerlo contra el secuestro accidental de los dominios de producción. Si no tiene un DNS registro para el dominio principal, Amazon Cognito devolverá un error cuando intente configurar el dominio personalizado. Un registro Start of Authority (SOA) no es suficiente DNS para verificar el dominio principal.

  6. Agrega otro DNS registro para tu dominio personalizado con las siguientes propiedades:

    • Nombre de registro: tu prefijo de dominio personalizado, por ejemplo, auth para crear un registro. auth.example.com

    • Tipo de registro:A.

    • Alias: Habilitar.

    • Dirigir el tráfico a: elija un alias para la distribución de Cloudfront. Introduzca el alias objetivo que registró anteriormente, por ejemplo123example.cloudfront.net.

    • Política de enrutamiento: elija un enrutamiento simple.

  7. Elija Crear registros.

    nota

    Los nuevos registros pueden tardar unos 60 segundos en propagarse a todos los DNS servidores de Route 53. Puede usar el GetChangeAPImétodo Route 53 para comprobar que los cambios se han propagado.

Paso 3: Verificar la página de inicio de sesión

  • Compruebe que la página de inicio de sesión está disponible desde el dominio personalizado.

    Inicie sesión con el dominio personalizado y el subdominio; para ello, introduzca esta dirección en el navegador. Este es un ejemplo URL de dominio personalizado example.com con el subdominio auth:

    https://myapp.auth.example.com/login?response_type=code&client_id=<your_app_client_id>&redirect_uri=<your_callback_url>

Cambiar el SSL certificado de tu dominio personalizado

Si es necesario, puede utilizar Amazon Cognito para cambiar el certificado que se ha aplicado al dominio personalizado.

Por lo general, esto no es necesario después de una renovación rutinaria del certificado conACM. Al renovar el certificado existente enACM, el formulario del ARN certificado sigue siendo el mismo y el dominio personalizado utiliza el nuevo certificado automáticamente.

Sin embargo, si reemplaza el certificado existente por uno nuevo, ACM le da al nuevo certificado un nuevo certificadoARN. Para aplicar el nuevo certificado a su dominio personalizado, debe proporcionárselo ARN a Amazon Cognito.

Una vez proporcionado el certificado, Amazon Cognito puede necesitar hasta una hora para distribuirlo en el dominio personalizado.

Antes de empezar

Para poder cambiar el certificado en Amazon Cognito, debe añadir el certificado a. ACM Para obtener más información, consulte la introducción de la Guía del usuario de AWS Certificate Manager .

Al añadir su certificado aACM, debe elegir EE. UU. Este (Virginia del Norte) como AWS región.

Puede cambiar su certificado mediante la consola de Amazon Cognito o. API

AWS Management Console
Para renovar un certificado mediante la consola de Amazon Cognito:
  1. Inicie sesión en la consola de Amazon Cognito AWS Management Console y ábrala en. https://console.aws.amazon.com/cognito/home

  2. Elija User Pools (Grupos de usuarios).

  3. Elija el grupo de usuarios para el que desea actualizar el certificado.

  4. Elija la pestaña App integration (Integración de aplicaciones).

  5. Seleccione Acciones y edite el ACM certificado.

  6. Seleccione el nuevo certificado que desea asociar a su dominio personalizado.

  7. Elija Guardar cambios.

API
Para renovar un certificado (Amazon CognitoAPI)