SqlColumnEncryptionAzureKeyVaultProvider Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Implementierung des Anbieters des Spaltenmasterschlüsselspeichers, mit dem Clientanwendungen auf Daten zugreifen können, wenn ein Spaltenmasterschlüssel in Microsoft Azure Key Vault gespeichert wird.
Weitere Informationen zu Always Encrypted finden Sie unter: https://aka.ms/AlwaysEncrypted.
Ein mit dem Zertifikatspeicheranbieter verschlüsselter Spaltenverschlüsselungsschlüssel sollte von diesem Anbieter entschlüsselt werden und umgekehrt.
Umschlagformat für den verschlüsselten Spaltenverschlüsselungsschlüssel : version + keyPathLength + ciphertextLength + keyPath + ciphertext + signature
- version: Ein einzelnes Byte, das die Formatversion angibt.
- keyPathLength: Länge des keyPath.
- ciphertextLength: Chiffretextlänge
- keyPath: keyPath, der zum Verschlüsseln des Spaltenverschlüsselungsschlüssels verwendet wird. Dies wird nur für Problembehandlungszwecke verwendet und wird während der Entschlüsselung nicht überprüft.
- Chiffretext: Verschlüsselter Spaltenverschlüsselungsschlüssel
- Signatur: Signatur des gesamten Bytearrays. Die Signatur wird vor dem Entschlüsseln des Spaltenverschlüsselungsschlüssels überprüft.
public ref class SqlColumnEncryptionAzureKeyVaultProvider : Microsoft::Data::SqlClient::SqlColumnEncryptionKeyStoreProvider
public class SqlColumnEncryptionAzureKeyVaultProvider : Microsoft.Data.SqlClient.SqlColumnEncryptionKeyStoreProvider
type SqlColumnEncryptionAzureKeyVaultProvider = class
inherit SqlColumnEncryptionKeyStoreProvider
Public Class SqlColumnEncryptionAzureKeyVaultProvider
Inherits SqlColumnEncryptionKeyStoreProvider
- Vererbung
Hinweise
Weitere Informationen finden Sie unter: Verwenden des Azure Key Vault-Anbieters
Konstruktoren
| Name | Beschreibung |
|---|---|
| SqlColumnEncryptionAzureKeyVaultProvider(TokenCredential, String) |
Konstruktor, der eine Implementierung von Tokenanmeldeinformationen akzeptiert, die ein OAuth-Token und einen vertrauenswürdigen Endpunkt bereitstellen können. |
| SqlColumnEncryptionAzureKeyVaultProvider(TokenCredential, String[]) |
Konstruktor, der eine Instanz einer Implementierung von Token-Anmeldeinformationen verwendet, die ein OAuth-Token und ein Array vertrauenswürdiger Endpunkte bereitstellen kann. |
| SqlColumnEncryptionAzureKeyVaultProvider(TokenCredential) |
Konstruktor, der eine Implementierung von Tokenanmeldeinformationen akzeptiert, die ein OAuth-Token bereitstellen können. |
Felder
| Name | Beschreibung |
|---|---|
| ProviderName |
Zeichenfolge für den Spaltenverschlüsselungsschlüsselspeicheranbieter |
| TrustedEndPoints |
Liste der vertrauenswürdigen Endpunkte |
Eigenschaften
| Name | Beschreibung |
|---|---|
| ColumnEncryptionKeyCacheTtl |
Ruft die Lebensdauer des entschlüsselten Spaltenverschlüsselungsschlüssels im Cache ab oder legt sie fest. Sobald der Zeitbereich abgelaufen ist, wird der entschlüsselte Spaltenverschlüsselungsschlüssel verworfen und muss erneut überprüft werden. |
Methoden
| Name | Beschreibung |
|---|---|
| DecryptColumnEncryptionKey(String, String, Byte[]) |
Diese Funktion verwendet den durch den Schlüsselpfad angegebenen asymmetrischen Schlüssel und entschlüsselt einen verschlüsselten CEK mit RSA-Verschlüsselungsalgorithmus. |
| DecryptColumnEncryptionKeyAsync(String, String, Byte[], CancellationToken) |
Verwendet asynchron den durch den Schlüsselpfad angegebenen asymmetrischen Schlüssel und entschlüsselt einen verschlüsselten CEK mit dem RSA-Verschlüsselungsalgorithmus. |
| EncryptColumnEncryptionKey(String, String, Byte[]) |
Diese Funktion verwendet den durch den Schlüsselpfad angegebenen asymmetrischen Schlüssel und verschlüsselt CEK mit RSA-Verschlüsselungsalgorithmus. |
| EncryptColumnEncryptionKeyAsync(String, String, Byte[], CancellationToken) |
Verwendet asynchron den durch den Schlüsselpfad angegebenen asymmetrischen Schlüssel und verschlüsselt einen CEK mit dem RSA-Verschlüsselungsalgorithmus. |
| SignColumnMasterKeyMetadata(String, Boolean) |
Verwendet einen asymmetrischen Schlüssel, der durch den Schlüsselpfad identifiziert wird, um die Masterschlüsselmetadaten zu signieren, die aus (masterKeyPath, allowEnclaveComputations bit, providerName) bestehen. |
| SignColumnMasterKeyMetadataAsync(String, Boolean, CancellationToken) |
Verwendet asynchron einen asymmetrischen Schlüssel, der durch den Schlüsselpfad identifiziert wird, um die Masterschlüsselmetadaten zu signieren, die aus (masterKeyPath, allowEnclaveComputations bit, providerName) bestehen. |
| VerifyColumnMasterKeyMetadata(String, Boolean, Byte[]) |
Verwendet einen asymmetrischen Schlüssel, der vom Schlüsselpfad identifiziert wird, um die Masterschlüsselmetadaten zu überprüfen, die aus (masterKeyPath, allowEnclaveComputations bit, providerName) bestehen. |
| VerifyColumnMasterKeyMetadataAsync(String, Boolean, Byte[], CancellationToken) |
Verwendet asynchron einen asymmetrischen Schlüssel, der durch den Schlüsselpfad identifiziert wird, um die Masterschlüsselmetadaten zu überprüfen, die aus (masterKeyPath, allowEnclaveComputations bit, providerName) bestehen. |