gpt4 book ai didi

java - 对输入流使用 AWS S3 加密

转载 作者:行者123 更新时间:2023-12-01 10:05:38 28 4
gpt4 key购买 nike

我有一个休息服务,可将内容流式传输到 AWS S3 存储桶。我想知道有哪些替代方案可以加密到存储桶的流,我的主要要求是加密 key 是自动管理的(例如 KMS),然后是性能方面。

是否可以使用 KMS 加密输入流,而无需使用 byte[] 并将整个内容缓冲在内存中?

我计划上传一些大于 1GB 的大文件(这就是为什么要进行流式传输以避免 OOM 错误)对此的首选建议是什么,与 < 10MB 的小文件相比有什么显着差异吗?

谢谢

最佳答案

我假设您正在使用 this采用 InputStreamPutObjectRequest 版本。

  1. 到S3的数据传输是通过SSL进行的,因此网络传输是加密的。

  2. 要使用 KMS key 加密存储在 S3 上的数据,您只需指定您希望 S3 使用的 KMS key 即可。创建 PutObjectRequest 后,只需在调用 s3Client.putObject() 之前调用: putObjectRequest.withSSEAwsKeyManagementParams(new SSEAwsKeyManagementParams(keyID));

或者,如果您想要在客户端进行所有加密,则可以使用 Java AWS SDK 中的 AmazonS3EncryptionClientEncryptedPutObjectRequest 类。

关于java - 对输入流使用 AWS S3 加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36496010/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com