Quero acessar o OpenSearch Dashboards e usar a autenticação do Amazon Cognito no meu domínio do Amazon OpenSearch Service. Porém, recebo um erro ou encontro um problema de login.
Resolução
A página de login não aparece quando você insere a URL do OpenSearch Dashboards
A página de login pode não aparecer pelos seguintes motivos:
- Você usou uma política de acesso ao domínio baseada em IP que permite que o endereço IP da sua máquina local acesse os Painéis. Para resolver esse problema, adicione o perfil autenticado do Amazon Cognito na política de acesso ao domínio.
- Você usou um perfil do AWS Identity and Access Management (AWS IAM) com permissão para assinar solicitações. Para resolver esse problema, não use um método proxy para assinar suas solicitações.
- Seu domínio do OpenSearch Service está em uma nuvem privada virtual (VPC, Virtual Private Cloud), portanto, o domínio tem uma política de acesso aberto. Você não precisa da autenticação do Amazon Cognito para acessar Painéis quando seu domínio está em uma VPC.
Observação: Para exigir a autenticação do Amazon Cognito, altere sua política de acesso ao domínio.
Se a autenticação do Amazon Cognito redirecionar você para a página de login do OpenSearch Dashboards, mas você não conseguir fazer login, você configurou incorretamente o Amazon Cognito. Para solucionar esse problema, realize as seguintes ações:
Erro “Missing Role”
Se você ativou o controle de acesso refinado no OpenSearch Dashboards em seu domínio do OpenSearch Service, poderá receber o seguinte erro:
“Missing Role No roles available for this user, please contact your system administrator.”
Para resolver esse problema, certifique-se de que o perfil assumido pelo banco de identidades do Amazon Cognito corresponda ao perfil do IAM para o usuário primário especificado.
Para corresponder o perfil do IAM do usuário primário com a função assumida do Amazon Cognito, conclua as seguintes etapas:
- Abra o console do OpenSearch Service.
- No painel de navegação, em Clusters gerenciados, escolha Domínios.
- Escolha Ações.
- Escolha Editar a configuração de segurança.
- Em Controle de acesso refinado, escolha Definir o ARN do IAM como seu usuário mestre.
- Em ARN do IAM, insira o ARN do perfil do banco de identidades do Amazon Cognito.
- (Opcional) Se você não souber o ARN do usuário primário, modifique seu usuário primário para especificar um novo ARN do IAM.
- Escolha Enviar.
Erro de configuração do banco de identidades inválido
Se o Amazon Cognito não tiver permissão para assumir um perfil do IAM para o usuário autenticado, você poderá receber o seguinte erro:
“com.amazonaws.services.cognitoidentity.model.InvalidIdentityPoolConfigurationException: Invalid identity pool configuration. Check assigned IAM roles for this pool. (Service: AmazonCognitoIdentity; Status Code: 400; Error Code: InvalidIdentityPoolConfigurationException; Request ID: #####-####-####-####-#####)”
Para resolver esse problema, modifique a relação de confiança para o perfil do IAM.
Conclua as etapas a seguir:
-
Abra o console do Amazon IAM.
-
Selecione Perfis.
-
Selecione seu perfil do IAM.
-
Escolha a guia Relações de confiança.
-
Escolha Editar relação de confiança. Certifique-se de que seu banco de identidades do Amazon Cognito possa assumir o perfil do IAM.
Exemplo de política de confiança:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Federated": "cognito-identity.amazonaws.com"
},
"Action": "sts:AssumeRoleWithWebIdentity",
"Condition": {
"StringEquals": {
"cognito-identity.amazonaws.com:aud": "identity-pool-id"
},
"ForAnyValue:StringLike": {
"cognito-identity.amazonaws.com:amr": "authenticated"
}
}
}
]
}
-
Selecione Atualizar política de confiança.
Para saber mais, consulte Tutorial: Configure um domínio com um usuário mestre do IAM e a autenticação do Amazon Cognito.
Você recebe um erro ao solicitar a página
Se você configurar incorretamente o URL de retorno de chamada ou o endpoint personalizado nas configurações do cliente de aplicação, poderá receber o seguinte erro:
“An error was encountered with the requested page”
Para verificar se você definiu corretamente as configurações do cliente de aplicação, conclua as seguintes etapas:
-
Abra o console do Amazon Cognito.
-
Escolha Gerenciar grupos de usuários.
-
Selecione o grupo de usuários que você deseja editar.
-
Em Integração de aplicação, selecione o cliente da aplicação OpenSearch no menu Cliente da aplicação.
-
Verifique se você configurou corretamente o(s) URL(s) de retorno de chamada e o(s) URL(s) de saída.
Exemplo de URL:
<dashboards-endpoint>/_dashboards/app/home
Exemplo de URL para um domínio com um endpoint personalizado ativado:
<domain-custom-endpoint>/_dashboards/app/home
Você recebe o erro “CognitoIdentityCredentials is not authorized to perform”
Se você fizer login, mas não conseguir ver o OpenSearch Dashboards, poderá receber o seguinte erro:
“User: arn:aws:sts:: 123456789012:assumed-role/Cognito_identitypoolAuth_Role/CognitoIdentityCredentials is not authorized to perform: es:ESHttpGet”
Por padrão, o perfil do IAM autenticado para bancos de identidades não inclui as permissões necessárias para acessar os Painéis. Para encontrar o nome do perfil autenticado e adicioná-lo à política de acesso do OpenSearch Service, conclua as seguintes etapas:
- Abra o console do Amazon Cognito.
- Escolha Gerenciar bancos de identidades.
- Escolha Editar bancos de identidades.
- Adicione seu perfil autenticado à sua política de acesso ao domínio do OpenSearch Service.
Observação: É uma prática recomendada usar uma política baseada em recursos para usuários autenticados. O perfil autenticado controla especificamente a autenticação do Amazon Cognito para OpenSearch Dashboards.
Informações relacionadas
Problemas comuns de configuração