Vraag Toegang krijgen Geweigerd bij het aanroepen van de PutObject-bewerking met machtiging op bucketniveau


Ik volgde het voorbeeld op http://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_examples.html#iam-policy-example-s3 om een ​​gebruiker toegang tot slechts één bucket te geven.

Vervolgens heb ik de configuratie getest met behulp van de W3 Total Cache Wordpress-plug-in. De test is mislukt.

Ik probeerde ook het probleem te reproduceren met behulp van

aws s3 cp --acl=public-read --cache-control='max-age=604800, public' ./test.txt s3://my-bucket/

en dat is mislukt

upload failed: ./test.txt to s3://my-bucket/test.txt A client error (AccessDenied) occurred when calling the PutObject operation: Access Denied

Waarom kan ik niet uploaden naar mijn bucket?


14
2018-03-28 22:29


oorsprong


antwoorden:


Om mijn eigen vraag te beantwoorden:

Het voorbeeldbeleid gaf PutObject-toegang, maar ik moest ook PutObjectAcl-toegang verlenen.

Ik moest veranderen

"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject"

van het voorbeeld naar:

"s3:PutObject",
"s3:PutObjectAcl",
"s3:GetObject",
"s3:GetObjectAcl",
"s3:DeleteObject"

49
2018-03-28 22:29



Ik had een soortgelijk probleem. Ik gebruikte ACL-dingen niet, dus ik had het niet nodig s3:PutObjectAcl.

In mijn geval deed ik (in Serverless Framework YML):

- Effect: Allow
  Action:
    - s3:PutObject
  Resource: "arn:aws:s3:::MyBucketName"

In plaats van:

- Effect: Allow
  Action:
    - s3:PutObject
  Resource: "arn:aws:s3:::MyBucketName/*"

Welke een toevoegt /* naar het einde van de emmer ARN.

Ik hoop dat dit helpt.


6
2018-04-12 16:33



Ik had dezelfde foutmelding voor een fout die ik maakte: Zorg ervoor dat u een correcte s3-uri gebruikt, zoals: s3://my-bucket-name/ 

(Als mijn bucket-naam natuurlijk aan de basis ligt van je aws s3)

Ik sta erop dat, omdat het kopiëren van de s3-bucket vanuit je browser er ongeveer zo uit komt https://s3.console.aws.amazon.com/s3/buckets/my-bucket-name/?region=my-aws-regiontab=overview 

Dus maakte ik de fout om te gebruiken s3://buckets/my-bucket-name wat verhoogt:

An error occurred (AccessDenied) when calling the PutObject operation: Access Denied


0
2018-06-18 20:54