Passer au contenu

Comment autoriser Quick Suite à accéder à un compartiment S3 avec une stratégie de refus ?

Lecture de 3 minute(s)
0

Je veux m'assurer que ma stratégie de compartiment Amazon Simple Storage Service (Amazon S3) autorise l'accès depuis Amazon Quick Suite.

Brève description

Si votre compartiment Amazon S3 utilise une stratégie de refus, cette dernière remplace toutes les autorisations S3 que vous spécifiez dans la console Amazon Quick Suite. Pour autoriser Quick Suite à accéder au compartiment S3, ajoutez le rôle de service Amazon Quick Sight (aws-quicksight-service-role-v0) comme exception dans votre stratégie de refus.

Résolution

Remarque : si des erreurs surviennent lorsque vous exécutez des commandes de l'interface de la ligne de commande AWS (AWS CLI), consultez la section Résoudre des erreurs liées à l’AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l’AWS CLI.

Procédez comme suit :

  1. Vérifiez que Quick Suite est autorisé à accéder au compartiment S3.

  2. Pour obtenir l'ID unique du rôle aws-quicksight-service-role-v0, exécutez la commande get-role de l'AWS CLI :

    aws iam get-role --role-name aws-quicksight-service-role-v0 --query 'Role.RoleId' --output json"AROAEXAMPLEID"

    Remarque : vous pouvez également utiliser l'appel d'API GetRole de Gestion des identités et des accès AWS (AWS IAM). L'identifiant est propre à chaque compte Quick Suite.

  3. (Facultatif) Si vous souhaitez ajouter une exception pour un utilisateur IAM, exécutez la commande get-user de l’AWS CLI pour trouver l'ID unique de l'utilisateur :

    aws iam get-user --user-name example-username

    Remarque : remplacez example-username par le nom d’utilisateur IAM.

  4. Ouvrez la console Amazon S3.

  5. Sélectionnez votre compartiment S3.

  6. Choisissez l’onglet Autorisations.

  7. Sous Stratégie de compartiment, sélectionnez Modifier.

  8. Saisissez une stratégie de compartiment similaire à cet exemple.

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Deny",
          "Principal": "*",
          "Action": "s3:*",
          "Resource": [
            "arn:aws:s3:::examplebucketname",
            "arn:aws:s3:::examplebucketname/*"
          ],
          "Condition": {
            "StringNotLike": {
              "aws:userid": [
                "AROAEXAMPLEID:*",
                "AIDAEXAMPLEUSERID"
              ]
            }
          }
        }
      ]
    }

    Remarque : remplacez examplebucketname par le nom de votre compartiment S3 et AROAEXAMPLEID par votre identifiant unique. Pour ajouter une exception pour un utilisateur IAM, remplacez AIDAEXAMPLEUSERID par l’ID unique de l’utilisateur IAM. La politique utilisateur IAM doit également contenir une instruction Autoriser pour le compartiment S3.

Si vous supprimez le rôle de service Quick Sight et l'utilisateur IAM, l'accès au compartiment est bloqué. Pour résoudre ce problème, connectez-vous en tant qu'utilisateur racine du compte AWS, puis utilisez la commande delete-bucket-policy de l’AWS CLI pour supprimer la stratégie de compartiment.

Informations connexes

Comment restreindre l'accès du compartiment Amazon S3 à un rôle IAM spécifique