是否可以使用密钥保管库加密文件并使用“Azure 存储数据移动库”将其存储在存储帐户中
Posted
技术标签:
【中文标题】是否可以使用密钥保管库加密文件并使用“Azure 存储数据移动库”将其存储在存储帐户中【英文标题】:Is it possible to encrypt the file using key vault and store it in storage account using "Azure Storage Data Movement Library" 【发布时间】:2017-11-23 05:35:22 【问题描述】:我可以使用 Azure Key Vault 加密和解密 Microsoft Azure 存储中的 blob,但是否可以使用 Azure 存储数据移动库来做同样的事情。 以下是我与 azure storage 数据移动库一起使用的代码
TransferManager.Configurations.ParallelOperations = 32;
TransferManager.Configurations.BlockSize = 4 * 1024 * 1024;
ServicePointManager.DefaultConnectionLimit = Environment.ProcessorCount * 8;
UploadOptions options = new UploadOptions();
SingleTransferContext context = new SingleTransferContext();
context.SetAttributesCallback = (destination) =>
CloudBlob destBlob = destination as CloudBlob;
destBlob.Properties.ContentType = "application/octet-stream";
;
// Start the upload
await TransferManager.UploadAsync(fileToUpload.InputStream, blob, options, context);
【问题讨论】:
【参考方案1】:通过使用 Key Vault 加密和解密,您是指 Azure 存储客户端库中的此功能:https://docs.microsoft.com/en-us/azure/storage/storage-client-side-encryption 吗? DataMovement 还不支持这个。 如果您打算自己加密并使用 DataMovement 将加密的流上传到 Azure 存储,那么只要流是固定长度、可读和可搜索的,您的代码就应该可以工作。
【讨论】:
【参考方案2】:我可以使用 Azure Key Vault 加密和解密 Microsoft Azure 存储中的 blob,但是否可以使用 Azure 存储数据移动库来做同样的事情。
据我所知,Azure 存储数据移动库现在不支持加密/解密功能。我们可以发现其他人报告了问题/功能请求。
Jatin Bhatt asked "Is there a way to encrypt/decrypt using DML?"
Support for client side encryption
【讨论】:
以上是关于是否可以使用密钥保管库加密文件并使用“Azure 存储数据移动库”将其存储在存储帐户中的主要内容,如果未能解决你的问题,请参考以下文章
Azure 磁盘加密 - 通过带有密钥保管库的 Terraform - VmExtensionProvisioningError
实现Azure密钥保管库2.0时出现Newtonsoft Json版本问题