Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Les membres de mon organisation reçoivent un message « La connexion externe n'est pas autorisée » lorsqu'ils essaient d'accéder à Quick Sight
| Public cible : administrateurs Amazon Quick Suite |
Lorsqu'un membre de votre organisation se fédère dans Quick Sight à l'aide de Quick Sight AssumeRoleWithWebIdentity, Quick Sight associe un seul utilisateur basé sur des rôles à un identifiant externe unique. Dans certains cas, cette personne peut être authentifiée au moyen d’un identifiant externe (tel qu’Amazon Cognito) différent de celui de l’utilisateur mappé à l’origine. Dans ce cas, ils ne peuvent pas accéder à Quick Sight et reçoivent le message d'erreur inattendu suivant.
L'identifiant externe utilisé pour la fédération n'est pas autorisé pour l'utilisateur de Quick Sight.
Pour savoir comment résoudre ce problème, consultez les sections suivantes :
Pourquoi ce problème se produit-il ?
Vous utilisez un flux Amazon Cognito simplifié
Si vous utilisez Amazon Cognito pour vous fédérer dans Quick Sight, la configuration de l'authentification unique (IAM Identity Center) peut utiliser l'opération d'CognitoIdentityCredentialsAPI pour assumer le rôle de Quick Sight. Cette méthode associe tous les utilisateurs du pool d'identités Amazon Cognito à un seul utilisateur Quick Sight et n'est pas prise en charge par Quick Sight.
Nous vous recommandons d’utiliser plutôt l’opération d’API AssumeRoleWithWebIdentity, qui spécifie le nom de session de rôle.
Vous utilisez des utilisateurs Amazon Cognito non authentifiés
Amazon Cognito IAM Identity Center est configuré pour les utilisateurs non authentifiés dans le groupe d’identités Amazon Cognito. La politique de confiance des rôles de Quick Sight est configurée comme dans l'exemple suivant.
Cette configuration permet à un utilisateur temporaire d'Amazon Cognito d'assumer une session de rôle mappée à un utilisateur Quick Sight unique. Les identités non authentifiées étant temporaires, elles ne sont pas prises en charge par Quick Sight.
Nous vous recommandons de ne pas utiliser cette configuration, qui n'est pas prise en charge par Quick Sight. Pour Quick Sight, assurez-vous que le centre d'identité Amazon Cognito IAM utilise des utilisateurs authentifiés.
Vous avez supprimé et recréé un utilisateur Amazon Cognito avec les mêmes attributs de nom d’utilisateur
Dans ce cas, l'utilisateur Amazon Cognito associé mappé à l'utilisateur Quick Sight a été supprimé et recréé. L’utilisateur Amazon Cognito nouvellement créé dispose d’un autre sujet sous-jacent. Selon la façon dont le nom de session du rôle est mappé à l'utilisateur Quick Sight, le nom de session peut correspondre au même utilisateur basé sur un rôle Quick Sight.
Nous vous recommandons de remapper l'utilisateur Quick Sight au sujet utilisateur Amazon Cognito mis à jour à l'aide UpdateUser de l'opération API. Pour plus d'informations, consultez l'exemple UpdateUser d'API suivant.
Vous cartographiez plusieurs groupes d'utilisateurs Amazon Cognito différents en un seul groupe Comptes AWS d'identités et avec Quick Sight
Le mappage de plusieurs groupes d'utilisateurs Amazon Cognito dans différents groupes Comptes AWS d'identités et Quick Sight n'est pas pris en charge par Quick Sight.
Comment résoudre ce problème ?
Vous pouvez utiliser les opérations de l'API publique de Quick Sight pour mettre à jour les informations de connexion externes de vos utilisateurs. Utilisez les options suivantes pour savoir comment procéder.
RegisterUser À utiliser pour créer des utilisateurs avec des informations de connexion externes
Si le fournisseur de connexion externe est Amazon Cognito, utilisez le code d’interface de la ligne de commande suivant pour créer des utilisateurs.
aws quicksight register-user --aws-account-idaccount-id--namespacenamespace--emailuser-email--user-roleuser-role--identity-type IAM --iam-arn arn:aws:iam::account-id:role/cognito-associated-iam-role--session-namecognito-username--external-login-federation-provider-type COGNITO --external-login-idcognito-identity-id--regionidentity-region
external-login-id doit être l’ID d’identité de l’utilisateur Amazon Cognito. Le format est <identity-region>:<cognito-user-sub>, comme illustré dans l’exemple suivant.
aws quicksight register-user --aws-account-id 111222333 --namespace default --email cognito-user@amazon.com --user-role ADMIN --identity-type IAM --iam-arn arn:aws:iam::111222333:role/CognitoQuickSightRole --session-name cognito-user --external-login-federation-provider-type COGNITO --external-login-id us-east-1:12345678-1234-1234-abc1-a1b1234567 --region us-east-1
Si le fournisseur de connexion externe est un fournisseur OpenID Connect (OIDC) personnalisé, utilisez le code d’interface de la ligne de commande suivant pour créer des utilisateurs.
aws quicksight register-user --aws-account-idaccount-id--namespacenamespace--emailuser-email--user-roleuser-role--identity-type IAM --iam-arn arn:aws:iam::account-id:role/identity-provider-associated-iam-role--session-nameidentity-username--external-login-federation-provider-type CUSTOM_OIDC --custom-federation-provider-urlcustom-identity-provider-url--external-login-idcustom-provider-identity-id--regionidentity-region
Voici un exemple.
aws quicksight register-user --aws-account-id 111222333 --namespace default --email identity-user@amazon.com --user-role ADMIN --identity-type IAM --iam-arn arn:aws:iam::111222333:role/CustomIdentityQuickSightRole --session-name identity-user --external-login-federation-provider-type CUSTOM_OIDC --custom-federation-provider-url idp.us-east-1.amazonaws.com/us-east-1_ABCDE --external-login-id 12345678-1234-1234-abc1-a1b1234567 --region us-east-1
Pour en savoir plus sur l'utilisation RegisterUser dans la CLI, consultez RegisterUserle manuel Amazon Quick Suite API Reference.
DescribeUser À utiliser pour vérifier les informations de connexion externes des utilisateurs
Si un utilisateur est un utilisateur fédéré basé sur des rôles provenant d’un fournisseur de connexion externe, utilisez l’opération d’API DescribeUser pour vérifier ses informations de connexion externes, comme illustré dans le code suivant.
aws quicksight describe-user --aws-account-idaccount-id--namespacenamespace--user-nameidentity-provider-associated-iam-role/identity-username--regionidentity-region
Voici un exemple.
aws quicksight describe-user --aws-account-id 111222333 --namespace default --user-name IdentityQuickSightRole/user --region us-west-2
Le résultat contient les champs d’informations de connexion externes, le cas échéant. Voici un exemple.
{ "Status": 200, "User": { "Arn": "arn:aws:quicksight:us-east-1:111222333:user-default-IdentityQuickSightRole-user", "UserName": "IdentityQuickSightRole-user", "Email": "user@amazon.com", "Role": "ADMIN", "IdentityType": "IAM", "Active": true, "PrincipalId": "federated-iam-AROAAAAAAAAAAAAAA:user", "ExternalLoginFederationProviderType": "COGNITO", "ExternalLoginFederationProviderUrl": "cognito-identity.amazonaws.com", "ExternalLoginId": "us-east-1:123abc-1234-123a-b123-12345678a" }, "RequestId": "12345678-1234-1234-abc1-a1b1234567" }
Pour en savoir plus sur l'utilisation DescribeUser dans la CLI, consultez DescribeUserle manuel Amazon Quick Suite API Reference.
UpdateUser À utiliser pour mettre à jour les informations de connexion externes des utilisateurs
Dans certains cas, il se peut que les informations de connexion externes enregistrées pour l’utilisateur à partir du résultat DescribeUser ne soient pas correctes ou que les informations de connexion externes soient manquantes. Si tel est le cas, vous pouvez utiliser l’opération d’API UpdateUser pour mettre à jour ces informations. Utilisez les exemples suivants.
Pour les utilisateurs Amazon Cognito, utilisez ce qui suit.
aws quicksight update-user --aws-account-idaccount-id--namespacenamespace--user-namecognito-associated-iam-role/cognito-username--emailuser-email--roleuser-role--external-login-federation-provider-type COGNITO --external-login-idcognito-identity-id--regionidentity-region
Voici un exemple.
aws quicksight update-user --aws-account-id 111222333 --namespace default --user-name CognitoQuickSightRole/cognito-user --email cognito-user@amazon.com --role ADMIN --external-login-federation-provider-type COGNITO --external-login-id us-east-1:12345678-1234-1234-abc1-a1b1234567 --region us-west-2
Pour les utilisateurs de fournisseurs OIDC personnalisés, utilisez ce qui suit.
aws quicksight update-user --aws-account-idaccount-id--namespacenamespace--user-nameidentity-provider-associated-iam-role/identity-username--emailuser-email--roleuser-role--external-login-federation-provider-type CUSTOM_OIDC --custom-federation-provider-urlcustom-identity-provider-url--external-login-idcustom-provider-identity-id--regionidentity-region
Voici un exemple.
aws quicksight update-user --aws-account-id 111222333 --namespace default --user-name IdentityQuickSightRole/user --email user@amazon.com --role ADMIN --external-login-federation-provider-type CUSTOM_OIDC --custom-federation-provider-url idp.us-east-1.amazonaws.com/us-east-1_ABCDE --external-login-id 123abc-1234-123a-b123-12345678a --region us-west-2
Si vous souhaitez supprimer les informations de connexion externes de l’utilisateur, utilisez NONE external login federation provider type. Utilisez la commande de l’interface de la ligne de commande suivante pour supprimer les informations de connexion externes.
aws quicksight update-user --aws-account-idaccount-id--namespacenamespace--user-nameidentity-provider-associated-iam-role/identity-username--emailuser-email--roleuser-role--external-login-federation-provider-type NONE --regionidentity-region
Voici un exemple.
aws quicksight update-user --aws-account-id 111222333 --namespace default --user-name CognitoQuickSightRole/cognito-user --email cognito-user@amazon.com --role ADMIN --external-login-federation-provider-type NONE --region us-west-2
Pour en savoir plus sur l'utilisation UpdateUser dans la CLI, consultez le UpdateUsermanuel Amazon Quick Suite API Reference.