使用SSE-KMS的S3分段上传 [英] S3 Multipart Upload with SSE-KMS
问题描述
我正在尝试使用aws-java-sdk(1.11.230)编写实用程序. 我可以使用PutObjectRequest通过SSE-KMS编写文件,如下所示:
I am trying to write a utility using aws-java-sdk (1.11.230). I am able to write a file with SSE-KMS by using PutObjectRequest as follow:
PutObjectRequest putRequest = new PutObjectRequest(existingBucketName, keyName, file)
.withSSEAwsKeyManagementParams(kmsKeyId);
但是尝试分段上传时,找不到任何方法为SSE-KMS指定加密配置.
but while trying to upload it in multipart, I could not find any way to specify encryption configuration for SSE-KMS.
任何人都可以提出一种成功解决此问题的方法. 任何建议将不胜感激.
Could anyone please suggest a way to go through this successfully. Any suggestion will be appreciated.
Vikash Pareek
Vikash Pareek
推荐答案
最后,我能够找到解决方案.可以通过将标头设置为 InitiateMultipartUploadRequest 对象的标题来完成,如下所示:
Finally, I am able to find the solution for this. It can be done by setting headers to InitiateMultipartUploadRequest object as follow:
InitiateMultipartUploadRequest initRequest = new
InitiateMultipartUploadRequest(bucketName, keyName);
initRequest.putCustomRequestHeader("x-amz-server-side-encryption", "aws:kms");
initRequest.putCustomRequestHeader("x-amz-server-side-encryption-aws-kms-key-id", kmsKey);
这篇关于使用SSE-KMS的S3分段上传的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!