[英]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.