Azure blob customerProvidedKey против EncryptionPolicy - PullRequest
0 голосов
/ 09 марта 2020

Мне нужно зашифровать файлы, загруженные в azure blob, чтобы никто, вошедший в azure, не мог его увидеть. Одним из решений является использование шифрования с пользовательским ключом. Я нашел по крайней мере два способа сделать это, но я не могу сказать, в чем разница между ними, может быть, некоторые из вас помогут мне.

первое решение - создать

BlobClientOptions options = new BlobClientOptions()
{
     CustomerProvidedKey = new CustomerProvidedKey(key)
};

и передать эту опцию при создании BlobServiceClient

, второе - создать

BlobEncryptionPolicy policy = new BlobEncryptionPolicy(rsa, null);
BlobRequestOptions options = new BlobRequestOptions() { EncryptionPolicy = policy };

и использовать его при загрузке файла blob.UploadFromStream(stream, stream.Length, null, options, null);

Я не могу найти никакой документации, показывающей разницу между ними.

1 Ответ

1 голос
/ 13 марта 2020

CustomerProvidedKey используется для шифрования данных на azure стороне сервера (официально она называется encrypt at rest), вы можете увидеть this do c для получения более подробной информации. Короче говоря, при использовании этого вида шифрования во время загрузки данных данные не шифруются. После завершения загрузки данные будут зашифрованы на azure стороне сервера с помощью CustomerProvidedKey .

Примечание: CustomerProvidedKey теперь в предварительном просмотре .

Но для второго используется BlobEncryptionPolicy , который используется для шифрования данных на стороне клиента. Когда вы используете этот тип шифрования, данные шифруются перед загрузкой в ​​azure.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...