優化我的服務器使用我感動的圖像(〜500),並呈現HTML
文件SEO
(〜1000)S3
存儲&它工作得很好,不過,我很擔心有DDoS
最終,這會讓我花費很多錢,因爲亞馬遜會收取每個GET
的請求。設置CORS配置爲AWS S3
我做了一些研究,如何防止,發現S3
有一個CORS
配置選項。
我試過了,但不幸的是,它似乎沒有工作。仍然可以從任何URL
訪問文件,我在做什麼錯?
UPDATE:
也試過設置桶政策:
優化我的服務器使用我感動的圖像(〜500),並呈現HTML
文件SEO
(〜1000)S3
存儲&它工作得很好,不過,我很擔心有DDoS
最終,這會讓我花費很多錢,因爲亞馬遜會收取每個GET
的請求。設置CORS配置爲AWS S3
我做了一些研究,如何防止,發現S3
有一個CORS
配置選項。
我試過了,但不幸的是,它似乎沒有工作。仍然可以從任何URL
訪問文件,我在做什麼錯?
UPDATE:
也試過設置桶政策:
CORS配置允許跨域請求。這不是限制訪問文件的方法。
默認情況下,瀏覽器將不允許跨域請求。例如,瀏覽器將不允許從example1.com
提供的頁面訪問example2.com
的內容。這樣做是爲了保護您的個人信息,例如試圖向Facebook打開iframe以訪問您的個人Facebook內容的人。
但是,如果example2.com
願意允許此跨域請求,那麼它可以添加一個交叉原始資源共享(CORS)策略,該策略規定允許example1.com
以跨域方式訪問內容。然後網絡瀏覽器將允許訪問。
總結:它是您的網絡瀏覽器控制CORS。 CORS策略只是告訴網絡瀏覽器允許它。
參見:Cross-Origin Resource Sharing (CORS)
限制由介紹人
您的特殊要求,不過,似乎是你願意從Amazon S3服務的內容,但只有當它出現在特定網頁上。例如,如果由example.com
提供服務的頁面請求,則僅顯示來自images.example.com
的圖像。您可以通過在Amazon S3存儲桶政策中指定推薦人來實現此目的。
從Restricting Access to a Specific HTTP Referrer:
{
"Version":"2012-10-17",
"Id":"http referer policy example",
"Statement":[
{
"Sid":"Allow get requests originating from www.example.com and example.com.",
"Effect":"Allow",
"Principal":"*",
"Action":"s3:GetObject",
"Resource":"arn:aws:s3:::examplebucket/*",
"Condition":{
"StringLike":{"aws:Referer":["http://www.example.com/*","http://example.com/*"]}
}
}
]
}
這是比較容易僞造引薦,但這通常應該給你你正在尋找的東西。
加載它,我做了你的建議,但它仍然沒有限制它。檢查 –
問題的更新請嘗試此操作:刪除存儲桶策略並檢查對象是否可訪問。如果它們仍然可以訪問,那麼其他內容就是授予訪問權限(例如,對象本身的權限,IAM用戶策略),並且必須刪除該對象以使其再次變爲私有。然後,添加上述政策,它應該工作正常。 –
如果我沒有設置公共訪問權限,我甚至無法從原始網站 –