2017-07-25 174 views
0

我希望存儲桶策略允許訪問存儲桶中的所有對象,並像存儲對象一樣在存儲桶上執行操作。 (行動是s3:*。)S3存儲桶策略:允許完全訪問存儲桶及其所有對象

我能夠通過使用兩個不同的資源名稱來解決此問題:一個用於arn:aws:s3:::examplebucket/*,另一個用於arn:aws:s3:::examplebucket

有沒有更好的方法來做到這一點 - 有沒有一種方法來指定一個資源標識符,指向桶本身及其所有包含的對象,在一個鏡頭?

+2

不,你正在做的方式是它必須做的方式。 –

回答

1

針對Bucket的權限與針對Bucket內的對象的權限是分開的。因此,您必須授予兩者的權限。

幸運的是,你可以寫一個較短的版本結合鬥級和對象級權限:

{ 
    "Id": "BucketPolicy", 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Sid": "AllAccess", 
     "Action": "s3:*", 
     "Effect": "Allow", 
     "Resource": [ 
     "arn:aws:s3:::my-bucket", 
     "arn:aws:s3:::my-bucket/*" 
     ], 
     "Principal": "*" 
    } 
    ] 
} 
相關問題