2017-10-02 3 views
0

j'ai un seau vide à http://tstststs.s3-us-west-2.amazonaws.com/ qui a l'autorisation ListObjects a permis l'accès du public, mais lors de l'exécution aws s3 ls s3://tstststs je reçois le message suivant: An error occurred (AccessDenied) when calling the ListObjects operation: Access DeniedImpossible ListObjects par AWS CLI

Quelqu'un peut-il me aider à cela? Depuis que je l'ai mis à l'accès public, il ne peut pas être une erreur d'identification, n'est-ce pas?

+0

Etes-vous sûr de configurer AWS CLI - correctement? Utilisez 'aws configure' en cas de doute. –

Répondre

0

Vous devez définir la stratégie de compartiment S3 comme suit: Note: Ceci permettra à quiconque de lire un objet dans « yourbucketname » et rien d'autre, comme les fichiers d'inscription, le téléchargement, etc. Amazon a publié beaucoup d'exemples si vous avez besoin quelque chose de plus spécifique:

{ 
    "Version": "2012-10-17", 
    "Statement": [{ 
     "Sid": "PublicReadOnly", 
     "Effect": "Allow", 
     "Principal": "*", 
     "Action": "s3:GetObject", 
     "Resource": "arn:aws:s3:::yourbucketname/*" 
    }] 
} 
+0

Je l'ai fait mais ça me donne toujours accessdenied ... la chose étrange est que je peux y accéder à partir d'un navigateur mais pas de CLI: / – Akababa

-1

La commande aws s3 ls en fait déclencheurs plus d'une commande ListObjects. (Par exemple, il peut extraire la région du compartiment, ce qui implique plus d'autorisations.)

Si vous voulez appeler purement ListOjects, utilisez aws s3api list-objects.