我使用S3來為我的網站儲存靜態檔案。由于我的網站有一個登錄密碼,我想限制對S3上的靜態檔案的訪問。
我成功地設定了訪問權限,如下所示。
{
"版本": "2012-10-17",
"Id": "http referer policy example",
"宣告": [
{
"Sid": "允許源自www.example.com 和 example.com的獲取請求。"。
"效果": "允許"。
"主體": "*",
"行動": "s3:GetObject",
"資源": "arn:aws:s3:::mybucket/*"。
"條件"。{
"StringLike": {
"aws:Referer": [
"https://mywebsite.com/*",
"http://127.0.0.1:8000/*"
]
}
}
}
]
}
然后,我試圖通過輸入URL來直接訪問圖片。 我得到了這樣的結果(請看附件)。
我的問題。
您認為從安全角度來看,暴露 RequestID 和 HostID 是否安全?
uj5u.com熱心網友回復: 請求ID和主機ID是Amazon S3中的識別符號,可用于除錯和支持目的。在S3中暴露這些資訊并沒有什么壞處,而且你無法阻止這些資訊的出現。
另外,請注意,使用 如果你希望保護Amazon S3中的有價值的/機密的資訊,那么你應該:aws:referer是一種相當不安全的方法保護您的內容,因為它在向S3發出請求時很容易被欺騙(偽造)。
您應該
<img src="...">)這樣,您可以使用S3來提供靜態內容,但您的應用程式可以完全控制誰被允許訪問這些內容。它不能像referer那樣被偽造,因為每個請求都用秘鑰的哈希值簽名。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/325336.html
標籤:
上一篇:使用`awsecsrun-task`和`awsecsexecute-command`在Docker鏡像中使用亞馬遜ECS的互動式外殼
