我創建了Amazon S3存儲桶以僅存儲來自我的網站的圖像。我有超過100萬的圖片全部都有公共閱讀權限。每次我做一個登錄,亞馬遜給了我這樣的警告:如何撤銷Amazon S3存儲桶中的公共權限
「這桶有你提供了這個水桶公共接入公共接入 我們強烈建議您從來沒有授予任何形式的公共訪問您的S3桶。「
我用下面的水桶政策只允許顯示只是在我的網站上的圖片:
{
"Version": "2012-10-17",
"Id": "http referer policy example",
"Statement": [
{
"Sid": "Allow get requests originated from www.example.com and example.com.br",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::examplebucket.com/*",
"Condition": {
"StringLike": {
"aws:Referer": [
"http://www.example.com/*",
"http://www.example.com.br/*",
"https://www.example.com/*",
"https://www.example.com.br/*"
]
}
}
}
]
}
如何撤銷對存儲桶和我的文件的公共訪問權限並將其僅授予我的網站?
謝謝!
謝謝您的解釋!我刪除了該策略,並且這些圖片仍然有效,因爲我使用公開閱讀功能上傳了這些策略。但考慮到我有超過100萬的圖片,不可能更改所有權限......謝謝! – Andre
@Andre這就是爲什麼它不僅是你的水桶政策是否允許你期待什麼,也無論它拒絕你不要指望有什麼測試是非常重要的。通過對對象進行「公開閱讀」,上述政策實際上並沒有做任何事情。如果你仍然希望被引用者拒絕,你可以創建'拒絕'策略測試'StringNotLikeIfExists'這個'aws:referer'條件鍵,但要小心,因爲如果你不這樣做,控制檯和其他內部機制的訪問可能會被拒絕提供必要的匹配條件以防止此政策拒絕他們。 –