我打算將用戶重定向到存儲在S3中的敏感資源的預先設置的URL。在檢查用戶的權限並且具有激進超時(30秒)之後,這些會生成。然而,我的擔心是,我的客戶端機器上存在的某些惡意軟件是否可以捕獲URL並在URL的過期時間內下載文件。或者我只是太偏執?AWS S3中預先登記的網址安全性如何?
如果之前已經回答了這個問題,請指出我的方向。感謝你的幫助。
我打算將用戶重定向到存儲在S3中的敏感資源的預先設置的URL。在檢查用戶的權限並且具有激進超時(30秒)之後,這些會生成。然而,我的擔心是,我的客戶端機器上存在的某些惡意軟件是否可以捕獲URL並在URL的過期時間內下載文件。或者我只是太偏執?AWS S3中預先登記的網址安全性如何?
如果之前已經回答了這個問題,請指出我的方向。感謝你的幫助。
我發現這個 - http://docs.aws.amazon.com/AmazonS3/latest/dev/AuthUsingTempFederationTokenRuby.html 並試了一下。它似乎有效。從文檔複述代碼 -
# Start a session with restricted permissions.
sts = AWS::STS.new()
policy = AWS::STS::Policy.new
policy.allow(
:actions => ["s3:ListBucket"],
:resources => "arn:aws:s3:::#{bucket_name}"
).condition.add(:like, :referer, "domain.com")
session = sts.new_federated_session(
'User1',
:policy => policy,
:duration => 2*60*60)
這樣我們就可以創建具有該客戶端下載和/或可能是AWS原始IP地址的政策:引薦字段設置爲我的應用程序的域。我認爲這對您的資源提供了至少一個阻礙。我明白,IP地址或引用者很容易被欺騙。但它比沒有任何保護更好。
任何在到期前獲取URL的人都可以使用它來訪問數據。 S3支持桶政策限制允許對數據的訪問的IP地址:
http://docs.aws.amazon.com/AmazonS3/latest/dev/AccessPolicyLanguage_UseCases_s3_a.html
然而,在這種情況下,你所擔心的客戶端計算機上的惡意軟件。所以這沒有幫助。您是否考慮過對數據進行加密,以便只有客戶端進程才能解密數據?
您仍然容易受到不安全/粗心的客戶端泄露數據的影響。
絕對不會,這真的很有幫助。無論如何感謝您的答案。 –
存儲桶政策無法正常工作,但是您知道任何可以在URL中包含臨時acl的方式嗎? thx- –
不是嗎?您是否可以代理請求並從本質上提供一次性URL? – sethwm