Comment résoudre les problèmes d'authentification Amazon Cognito for Kibana ?

Date de la dernière mise à jour : 11/02/2020

Je ne parviens pas à accéder à Kibana via Amazon Cognito sur mon domaine Amazon Elasticsearch Service (Amazon ES). 

Solution

Je reçois un message d'erreur lorsque j'essaie d'activer l'authentification Amazon Cognito.

  • « Amazon ES can't create the role »: Verify that the Amazon Cognito role is correctly configured for your AWS Identity and Access Management (IAM) user (Amazon ES ne peut pas créer le rôle : vérifiez que le rôle Amazon Cognito est correctement configuré pour votre utilisateur AWS Identity and Access Management (IAM).
  • « An error occurred (ValidationException) when calling the CreateElasticsearchDomain operation: Domain needs to be specified for user pool": Verify that the domain name is specified » (Une erreur s'est produite (ValidationException) lors de l'appel de l'opération CreateElasticsearchDomain : vérifiez que le nom de domaine est spécifié. Vous pouvez utiliser le domaine du groupe d'utilisateurs hébergé ou ajouter un domaine personnalisé. Amazon ES utilise le nom de domaine pour rediriger les utilisateurs vers une page de connexion pour accéder à Kibana.

Lorsque je saisis l'URL Kibana, je ne vois pas la page de connexion. Je suis directement dirigé vers le tableau de bord Kibana.

L'authentification Amazon Cognito n'est pas obligatoire. Vous êtes redirigé vers la page de connexion Kibana lorsque les événements suivants se produisent :

  • Vous utilisez une politique d'accès au domaine basée sur l'IP qui permet à l'adresse IP publique de votre ordinateur local d'accéder à Kibana.
  • Les demandes sont signées par un utilisateur ou un rôle IAM autorisé.
  • Votre domaine Amazon ES se trouve dans un Virtual Private Cloud (VPC), et le domaine dispose d'une stratégie d'accès ouverte. Dans ce scénario, tous les utilisateurs VPC peuvent accéder à Kibana et au domaine sans authentification Amazon Cognito.

Pour vérifiez que l'authentification Amazon Cognito est obligatoire, modifiez votre politique d'accès au domaine. Pour plus d'informations, consultez Configuration des politiques d'accès.

Lorsque je saisis l'URL Kibana, je reçois une erreur redirect_mismatch.

  1. Connectez-vous à la console Amazon Cognito.
  2. Choisissez Manage User Pools (Gérer les groupes d'utilisateurs), puis le groupe d'utilisateurs à modifier.
  3. Dans la barre de navigation sur le côté gauche de la page, choisissez App clients (Clients d'application).
  4. Vérifiez que l'URL de rappel et l'URL de connexion sont correctement définies, comme dans cet exemple :
your-kibana-endpoint/app/kibana

Remarque: remplacez votre-pointdeterminaison--kibana par le nom de votre point de terminaison.

Je suis redirigé vers la page de connexion Kibana, mais je ne peux pas me connecter.

Je peux me connecter, mais je ne vois pas Kibana.

Une fois que je me suis connecté à Kibana, je reçois un message d'erreur suivant :

User: arn:aws:sts:: 123456789012:assumed-role/Cognito_identitypoolAuth_Role/CognitoIdentityCredentials is not authorized to perform: es:ESHttpGet

Par défaut, le rôle IAM authentifié pour les groupes d'identités n'inclut pas les privilèges requis pour accéder à Kibana. Vous pouvez rechercher le nom du rôle authentifié et l'ajouter à la politique d'accès Amazon ES en procédant comme suit :

  1. Connectez-vous à la console Amazon Cognito.
  2. Choisissez Manage Identity Pools (Gérer les groupes d'utilisateur), puis le groupe d'utilisateurs à modifier.
  3. Dans l'angle supérieur droit de la page Dashboard (Tableau de bord), choisissez Edit identity pool (Modifier le groupe d'identités).
  4. Ajoutez votre rôle authentifié à la politique d'accès au domaine Amazon ES.

Remarque: une bonne pratique consiste à utiliser une politique basée sur les ressources pour les utilisateurs authentifiés. Le rôle authentifié contrôle uniquement l'authentification Amazon Cognito pour Kibana. Par conséquent, ne supprimez pas d'autres ressources de la politique d'accès au domaine.

Pour d'autres scénarios de dépannage, consultez Problèmes de configuration courants.