我试图打开服务器端加密时,异步上传文件到亚马逊S3。我的文件上传工作,但无法确定在哪里指定加密选项。有什么想法吗?
using (var s3Client = new AmazonS3Client(awsAccessKeyID, awsSecretAccessKey, regionEndPoint))
{
using (TransferUtility fileTransferUtility = new TransferUtility(s3Client))
{
await fileTransferUtility.UploadAsync(filePath, bucketName, objectkey);
}
}编辑:
我意识到,亚马逊有关于如何使用putObjectRequest指定加密的文档,但我想知道是否可以使用FileTransferUtility进行加密。
http://docs.aws.amazon.com/AmazonS3/latest/dev/SSEUsingDotNetSDK.html
发布于 2015-03-24 02:03:14
具体而言,请参见http://docs.aws.amazon.com/AmazonS3/latest/dev/SSEUsingDotNetSDK.html:
当使用高级多部分上传API (请参阅使用高级.NET API进行多部分上载)时,TransferUtility类提供方法(上载和UploadDirectory)来上载对象。在这种情况下,您可以使用TransferUtilityUploadRequest和TransferUtilityUploadDirectoryRequest对象请求服务器端加密.
它应该是这样的(对不起,现在不是在测试它的地方):
TransferUtilityUploadRequest fileTransferUtilityRequest = new TransferUtilityUploadRequest
{
BucketName = existingBucketName,
FilePath = filePath,
StorageClass = S3StorageClass.ReducedRedundancy,
PartSize = 6291456, // 6 MB.
Key = keyName,
ServerSideEncryptionMethod = ServerSideEncryptionMethod.AES256
};
fileTransferUtility.UploadAsync(fileTransferUtilityRequest, someCancelToken);https://stackoverflow.com/questions/29223649
复制相似问题