这是我的下载代码:
IAmazonS3 client;
string key = tenant_id + @"/files/" + filename;
try
{
using (client = new AmazonS3Client(Amazon.RegionEndpoint.USEast1))
{
GetObjectRequest request = new GetObjectRequest
{
BucketName = existingBucketName,
Key = key
};
using (GetObjectResponse response = client.GetObject(request))
{
string dest = path;
if (!File.Exists(dest))
{
response.WriteResponseStreamToFile(dest);
}
}
}
return true;
}
我想在下载过程中解密文件。我已经浏览了支持文档,但无法继续。我需要在当前代码中进行哪些更改才能实现此目的?
答案 0 :(得分:1)
这取决于文件的加密方式。 S3支持client-side encryption和server-side encryption。
如果使用服务器端加密对文件进行加密,则S3正在管理密钥,或者您需要在请求中提供密钥。如果文件在上载到S3之前已在客户端加密,那么您必须自己解密下载的文件。在这种情况下,请查看AmazonS3EncryptionClient以简化操作。