我需要能夠在將文件存儲在S3上之前對其進行加密,然後在訪問文件時對其進行解密。這些文件將是圖像,文檔,PDF等。使用Carrierwave加密/解密文件並在S3中存儲(Rails)
我使用Carrierwave處理文件上傳和存儲(這是與Ruby on Rails)。我將它們存儲在Amazon S3中。
有沒有人這樣做,或有任何想法如何實現?
謝謝。
我需要能夠在將文件存儲在S3上之前對其進行加密,然後在訪問文件時對其進行解密。這些文件將是圖像,文檔,PDF等。使用Carrierwave加密/解密文件並在S3中存儲(Rails)
我使用Carrierwave處理文件上傳和存儲(這是與Ruby on Rails)。我將它們存儲在Amazon S3中。
有沒有人這樣做,或有任何想法如何實現?
謝謝。
亞馬遜現在發佈的功能可讓您在S3中自動加密/解密文件。自己做這件事的必要性已經不存在了。細節在這裏http://docs.amazonwebservices.com/AmazonS3/latest/dev/index.html?UsingEncryption.html
要處理加密,您應該考慮實現處理器。如果您使用的是其他處理器,您可能需要考慮擴展Carrierwave gem並添加處理器訂購機制,以確保最後進行加密。
對於解密,您可以覆蓋現有訪問者以使解密變爲透明,或者添加一個新方法,該方法返回解密文件並使用該方法代替訪問者。後一種方法可能對上游變化更有彈性。
我不希望使用任何其他處理器的任何想法是什麼處理器,我可以使用加密? –
我知道這個職位是幾個月大,但如果你仍然在尋找答案,請檢查我寫的carrierwave_securefile寶石。它仍然是新的,可能在其他設置上有點bug,但它在上傳之前使用Crypt19進行Blowfish加密。
謝謝我會檢查出來,但是,自從Amazon發佈了他們自己的S3加密功能後,我不認爲我需要再處理它了。 –
亞馬遜上證所不是大多數人尋求加密的東西。你想在你的服務器被黑客攻擊時保護客戶文件。當有人獲得您的S3憑證的訪問權時,亞馬遜SSE不起作用。 – m33lky
我認爲這是我回答自己的問題時第一次被低估。這確實解決了我的問題。 –
我假設您使用了「亞馬遜服務器端加密」,因爲如果您要使用亞馬遜客戶端加密,「需要」混淆鍵不會奇蹟般地消失。我相信加密上傳文件的目的是爲了最大限度地減少黑客入侵服務器的人可訪問的數據量。亞馬遜上證所在這裏並沒有真正的幫助。 – m33lky