簡體   English   中英

如何獲得帶有簽名URL的Amazon s3加密對象?

[英]How to get Amazon s3 Encrypted object with signed URL?

我已經為我的s3對象創建了一個簽名URL。

使用“使用客戶提供的加密密鑰的服務器端加密”存儲對象。

現在,當我的客戶瀏覽到簽名的URL時,他得到:

該對象是使用服務器端加密的形式存儲的。 必須提供正確的參數才能檢索對象

我需要以某種方式使我的客戶端在到達URL之前發送“ x-amz服務器端加密客戶算法”標頭和“ x-amz服務器端加密客戶密鑰”標頭。

知道如何實現嗎?

在簽署網址時,應在服務器端使用“ x-amz服務器端加密客戶算法”和“ x-amz服務器端加密客戶密鑰”,並且客戶端無需添加請求的任何標頭。

我不知道PHP語法,但是在Java SDK中,它的工作方式如下:

 generatePresignedUrlRequest = new GeneratePresignedUrlRequest(BUCKET_NAME, TOKEN)
 .withSSEAlgorithm(SSEAlgorithm.KMS.getAlgorithm())
 .withKmsCmkId("YOUR_KMS_KEY_ID");

要么

 generatePresignedUrlRequest.addRequestParameter("x-amz-server-side-encryption", "aws:kms");
 generatePresignedUrlRequest.addRequestParameter("x-amz-server-side-encryption-aws-kms-key-id", "YOUR_KMS_KEY_ID");

在簽名GET方法時,您不應做任何空間操作。

有關更多信息,請參閱本指南: 使用SSE生成Amazon S3預簽名URL

拉茲

暫無
暫無

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

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