Ao usar o AWS re:Post, você concorda com os AWS re:Post Termos de uso

Como faço para solucionar erros ao criar um domínio personalizado no Amazon Cognito?

6 minuto de leitura
0

Preciso aprender a resolver erros comuns ao configurar domínios personalizados no Amazon Cognito.

Breve descrição

Ao configurar nomes de domínio personalizados no Amazon Cognito, os seguintes erros geralmente ocorrem:

  • “Custom domain is not a valid subdomain: Was not able to resolve the root domain, please ensure an A record exists for the root domain.” (O domínio personalizado não é um subdomínio válido: não foi possível resolver o domínio raiz. Certifique-se de que exista um registro A para o domínio raiz.)
  • “Domain already associated with another user pool.” (Domínio já associado a outro grupo de usuários.)
  • “One or more of the CNAMEs you provided are already associated with a different resource.” (Um ou mais dos CNAMEs fornecidos já estão associados a outro recurso.)
  • “The specified SSL certificate doesn't exist, isn't in us-east-1 region, isn't valid, or doesn't include a valid certificate chain.” (O certificado SSL especificado não existe, não está na região us-east-1, não é válido ou não inclui uma cadeia de certificados válida.)
  • “The domain name contains an invalid character. Domain names can only contain lower-case letters, numbers, and hyphens. Please enter a different name that follows this format: ^a-z0-9?$” (O nome do domínio contém um caractere inválido. Os nomes de domínio só podem conter letras minúsculas, números e hifens. Insira outro nome que siga este formato: ^a-z0-9?$)

Resolução

Erro “Custom domain is not a valid subdomain error” (O domínio personalizado não é um subdomínio válido)

Para evitar mudanças acidentais na infraestrutura, o Amazon Cognito não oferece suporte a domínios de nível superior (TLDs) para domínios personalizados. Para criar um domínio personalizado do Amazon Cognito, o domínio pai deve ter um registro do Sistema de Nomes de Domínio (DNS) A.

O pai pode ser a raiz do domínio ou um domínio filho que está uma posição acima na hierarquia do domínio. Por exemplo, se seu domínio personalizado for auth.xyz.yourdomain.com, o Amazon Cognito deverá resolver **xyz.**yourdomain.com para um endereço IP. Da mesma forma, se você quiser configurar xyz.yourdomain.com como um domínio personalizado, configure um registro A para yourdomain.com.

Você deve criar um registro A para o domínio pai na sua configuração de DNS. Quando o domínio principal é resolvido para um registro A válido, o Amazon Cognito não realiza verificações adicionais. Se o domínio principal não apontar para um endereço IP real, considere colocar um endereço IP fictício, como “8.8.8.8", na sua configuração de DNS.

Seu provedor de DNS pode levar algum tempo para propagar as alterações feitas em sua configuração de DNS. Para garantir que seu provedor de DNS tenha propagado a alteração, execute um dos seguintes comandos:

Usando auth.xyz.yourdomain.com como domínio personalizado:

$ dig A xyz.yourdomain.com +short

-ou-

Usando xyz.yourdomain.com como domínio personalizado:

$ dig A yourdomain.com +short

Observação: os comandos de exemplo anteriores são para um ambiente Linux.

Se a alteração na configuração de DNS se propagar, o comando anterior retornará o endereço IP que você configurou. Se a pesquisa de DNS não estiver retornando o endereço IP configurado, aguarde até que a alteração seja propagada. Caso contrário, você continuará recebendo o erro sobre o domínio personalizado não ser um subdomínio válido.

Depois que o domínio personalizado for criado no Amazon Cognito, você poderá remover o mapeamento de registro do domínio pai A que você configurou anteriormente.

Erro “Domain already associated with another user pool” (O domínio já está associado a outro grupo de usuários)

Os nomes de domínio personalizados devem ser exclusivos em todas as contas da AWS em todas as regiões da AWS. Quando você usa um nome de domínio personalizado para um grupo de usuários, o mesmo nome de domínio não pode ser usado para nenhum outro grupo de usuários. Você deve excluir o domínio personalizado associado ao primeiro grupo de usuários se quiser usar o nome de domínio para outro grupo de usuários.

Depois de excluir um domínio personalizado, é necessário algum tempo para dissociar totalmente o domínio personalizado do grupo de usuários. Se você tentar configurar o nome de domínio com outro grupo de usuários imediatamente após a exclusão, poderá encontrar o erro de associação de domínio. Se você receber o erro de associação de domínio, aguarde de 15 a 20 minutos antes de configurar o nome de domínio com o novo grupo de usuários.

Erro “One or more of the CNAMEs you provided are already associated with a different resource” (Um ou mais dos CNAMEs fornecidos já estão associados a outro recurso)

Depois de criar um domínio personalizado, o Amazon Cognito cria uma distribuição do Amazon CloudFront gerenciada pela AWS usando o mesmo nome de domínio personalizado. Você pode usar um nome de domínio com apenas uma distribuição do CloudFront. Se você estiver usando um nome de domínio como um domínio alternativo no CloudFront, não poderá usar o nome de domínio existente para criar um domínio personalizado. Se você tentar criar um domínio personalizado que já esteja associado a uma distribuição do CloudFront, o erro de associação CNAME será exibido.

Você pode resolver esse erro de uma das duas maneiras a seguir:

  • Use outro nome de domínio para o domínio personalizado do Amazon Cognito.
  • Ao usar o domínio como um domínio personalizado do Amazon Cognito, pare de usar o nome de domínio com outra distribuição do CloudFront.

Erro “The specified SSL certificate doesn't exist” (O certificado SSL especificado não existe)

  1. Para criar um domínio personalizado do Amazon Cognito, você deve ter de um certificado do AWS Certificate Manager (ACM) na região da AWS us-east-1. Quando você cria o domínio personalizado, o Amazon Cognito cria internamente uma distribuição do CloudFront. O CloudFront oferece suporte a certificados do ACM somente na região us-east-1.
  2. Ao configurar o domínio personalizado, verifique se o certificado selecionado não expirou.
  3. Se você importar um certificado para o ACM, certifique-se de que o certificado seja emitido por uma autoridade de certificação (CA) pública. O certificado também deve ter a cadeia de certificados correta. Para obter mais informações, consulte Importar certificados para o AWS Certificate Manager.
  4. Seu certificado deve ter 2.048 bits ou menos. O certificado não pode ser protegido por senha.
  5. Se uma avaliação da política do AWS Key Management Service (AWS KMS) resultar em uma declaração de negação explícita, você poderá receber um erro de certificado SSL. Quando determinadas ações do AWS KMS são explicitamente negadas para o usuário ou perfil do IAM que cria o domínio personalizado do Amazon Cognito, esse erro ocorre. O erro ocorre com mais frequência nas seguintes ações explicitamente negadas do AWS KMS: kms:DescribeKey, kms:CreateGrant ou kms:*.

Erro “The domain name contains an invalid character error” (O nome do domínio contém um caractere inválido)

Se um nome de domínio contiver algo diferente de letras minúsculas, números e hifens, o nome de domínio não será aceito. Você não pode usar um hífen para o primeiro ou o último caractere. O tamanho máximo de todo o nome de domínio, incluindo os pontos, é de 63 caracteres.


Informações relacionadas

Using your own domain for the hosted UI (Como usar seu próprio domínio para a interface de usuário hospedada)

AWS OFICIAL
AWS OFICIALAtualizada há 2 anos