【问题标题】:Amazon S3 server side encryptionAmazon S3 服务器端加密
【发布时间】:2015-03-24 01:50:18
【问题描述】:

我在将文件异步上传到 Amazon 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

【问题讨论】:

    标签: c# amazon-web-services amazon-s3


    【解决方案1】:

    http://docs.aws.amazon.com/AmazonS3/latest/dev/SSEUsingDotNetSDK.html,具体来说,这个:

    使用高级分段上传 API(请参阅Using the High-Level .NET API for Multipart Upload)时,TransferUtility 类提供上传对象的方法(Upload 和 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);
    

    【讨论】:

    猜你喜欢
    • 2021-01-02
    • 2016-07-24
    • 2013-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-04
    • 1970-01-01
    • 2011-12-02
    相关资源
    最近更新 更多