SqlColumnEncryptionAzureKeyVaultProvider 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
實作資料行主要金鑰存放區提供者,可讓用戶端應用程式在 Microsoft Azure 金鑰保存庫中儲存資料行主要金鑰時存取資料。
如需Always Encrypted的詳細資訊,請參閱: https://aka.ms/AlwaysEncrypted 。
使用憑證存放區提供者加密的資料行加密金鑰應該由此提供者解密,反之亦然。
加密資料行加密金鑰的信封格式:version + keyPathLength + ciphertextLength + keyPath + 加密文字 + 簽章
- version:表示格式版本的單一位元組。
- keyPathLength:keyPath 的長度。
- ciphertextLength:加密文字長度
- keyPath:用來加密資料行加密金鑰的 keyPath。 這僅用於疑難排解目的,而且不會在解密期間進行驗證。
- 加密文字:加密的資料行加密金鑰
- 簽章:整個位元組陣列的簽章。 簽章會在解密資料行加密金鑰之前進行驗證。
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
- 繼承
備註
如需詳細資訊,請參閱:使用 Azure 金鑰保存庫 提供者
建構函式
SqlColumnEncryptionAzureKeyVaultProvider(TokenCredential) |
建構函式,採用能夠提供 OAuth 權杖的權杖認證實作。 |
SqlColumnEncryptionAzureKeyVaultProvider(TokenCredential, String) |
建構函式,採用能夠提供 OAuth 權杖和受信任端點的權杖認證實作。 |
SqlColumnEncryptionAzureKeyVaultProvider(TokenCredential, String[]) |
建構函式,這個建構函式接受能夠提供 OAuth 權杖和受信任端點陣列之權杖認證的實作實例。 |
欄位
ProviderName |
資料行加密金鑰存放區提供者字串 |
TrustedEndPoints |
受信任的端點清單 |
屬性
ColumnEncryptionKeyCacheTtl |
取得或設定快取中解密資料行加密金鑰的生命週期。 經過時間範圍之後,解密的資料行加密金鑰會被捨棄,而且必須重新驗證。 |
方法
DecryptColumnEncryptionKey(String, String, Byte[]) |
此函式會使用金鑰路徑所指定的非對稱金鑰,並使用 RSA 加密演算法解密加密的 CEK。 |
EncryptColumnEncryptionKey(String, String, Byte[]) |
此函式會使用金鑰路徑所指定的非對稱金鑰,並使用 RSA 加密演算法加密 CEK。 |
SignColumnMasterKeyMetadata(String, Boolean) |
使用金鑰路徑所識別的非對稱金鑰來簽署由 masterKeyPath (、allowEnclaveComputations 位、providerName) 所組成的主要金鑰中繼資料。 |
VerifyColumnMasterKeyMetadata(String, Boolean, Byte[]) |
使用金鑰路徑所識別的非對稱金鑰,來驗證主要金鑰中繼資料,其中包含 (masterKeyPath、allowEnclaveComputations 位、providerName) 。 |