Szyfrowanie danych tabeli

Biblioteka klienta usługi Azure Storage platformy .NET obsługuje szyfrowanie właściwości jednostki ciągu dla operacji wstawiania i zastępowania. Zaszyfrowane ciągi są przechowywane w usłudze jako właściwości binarne i są konwertowane z powrotem na ciągi po odszyfrowaniu.

W przypadku tabel oprócz zasad szyfrowania użytkownicy muszą określić właściwości, które mają być szyfrowane. Można to zrobić, określając atrybut [EncryptProperty] (dla jednostek POCO, które pochodzą z tabeli TableEntity) lub rozpoznawania szyfrowania w opcjach żądania. Rozpoznawanie szyfrowania to delegat, który przyjmuje klucz partycji, klucz wiersza i nazwę właściwości oraz zwraca wartość logiczną wskazującą, czy ta właściwość ma być zaszyfrowana. Podczas szyfrowania biblioteka kliencka używa tych informacji, aby zdecydować, czy zaszyfrować właściwość podczas zapisywania w sieci. Delegat zapewnia również możliwość logiki dotyczącej sposobu szyfrowania właściwości. (Jeśli na przykład X, szyfruj właściwość A; w przeciwnym razie szyfruj właściwości A i B). Nie jest konieczne podanie tych informacji podczas odczytywania lub wykonywania zapytań dotyczących jednostek.

Obsługa scalania

Scalanie nie jest obecnie obsługiwane. Ponieważ podzbiór właściwości mógł zostać wcześniej zaszyfrowany przy użyciu innego klucza, po prostu scalanie nowych właściwości i aktualizowanie metadanych powoduje utratę danych. Scalanie wymaga wykonania dodatkowych wywołań usługi w celu odczytania wstępnie istniejącej jednostki z usługi lub użycia nowego klucza na właściwość, z których oba nie są odpowiednie ze względów wydajności.

Następne kroki