簡體   English   中英

加密AWS S3存儲桶中的對象

[英]encrypt object in aws s3 bucket

我正在從應用程序將一些圖像/對象保存在aws s3存儲桶中。 首先,我從nodejs服務api獲取簽名的url,並使用jquery ajax將圖像或文件上傳到單個url。 我可以使用屬性( https://s3.amazonaws.com/bucketname/objectname )中提供的鏈接打開圖像或對象。

我想為每個上傳的對象提供安全性。 即使偶然地有任何匿名用戶在某處獲得了鏈接( https://s3.amazonaws.com/bucketname/objectname ),他也無法打開它。 應該訪問它們(對象),並且僅打開諸如請求具有某些標頭密鑰值等的情況。我嘗試通過在請求中指定標頭密鑰值來嘗試服務器端加密,如下所示。

        var file = document.getElementById('fileupload').files[0];
        $.ajax({
            url: signedurl,
            type: "PUT",
            data: file,
            header:{'x-amz-server-side-encryption':'AES256'},               
            contentType: file.type,
            processData: false,
            success: function (result) {
                var res = result;

            },
            error: function (error) {
                alert(error);
            }

服務器端加密不會將加密對象保留在s3存儲桶中嗎? 它是否僅在傳輸時加密並在保存到s3存儲之前解密?

如果將加密對象存儲在s3存儲上,那么如何使用屬性中顯示的鏈接將其打開。

Amazon S3中的服務器端加密(SSE)靜止的對象(存儲在磁盤上)進行加密但是在檢索到對象時對它們進行解密。 因此,它是一種透明的加密形式。

如果您希望將對象保留在Amazon S3中私有,但讓特定的授權用戶可以使用,則建議使用Pre-Signed URL

通過讓您的應用程序生成URL來提供此時間,該URL提供了對Amazon S3中特定對象的限時訪問的功能。 否則,這些對象將保持私有狀態,因此無法訪問它們。

請參閱文檔: 與他人共享對象

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM