SqlColumnEncryptionCngProvider 类

定义

用于将 Microsoft API 下一代加密技术 (CNG) 与 Always Encrypted 结合使用的 CMK 存储提供程序实现。

public ref class SqlColumnEncryptionCngProvider : Microsoft::Data::SqlClient::SqlColumnEncryptionKeyStoreProvider
public class SqlColumnEncryptionCngProvider : Microsoft.Data.SqlClient.SqlColumnEncryptionKeyStoreProvider
type SqlColumnEncryptionCngProvider = class
    inherit SqlColumnEncryptionKeyStoreProvider
Public Class SqlColumnEncryptionCngProvider
Inherits SqlColumnEncryptionKeyStoreProvider
继承
SqlColumnEncryptionCngProvider

注解

支持在存储中存储Always Encrypted列主密钥,例如支持 Microsoft 加密 API:下一代 (CNG) 的硬件安全模块 (HSM) 。

构造函数

SqlColumnEncryptionCngProvider()

用于将 Microsoft API 下一代加密技术 (CNG) 与 Always Encrypted 结合使用的 CMK 存储提供程序实现。

字段

ProviderName

提供程序名称“MSSQL_CNG_STORE”的常量字符串。

属性

ColumnEncryptionKeyCacheTtl

获取或设置缓存中解密的列加密密钥的生存期。 时间跨度过后,解密的列加密密钥将被丢弃,必须重新验证。

(继承自 SqlColumnEncryptionKeyStoreProvider)

方法

DecryptColumnEncryptionKey(String, String, Byte[])

使用由密钥路径和指定算法指定的非对称密钥对给定的加密值进行解密。 密钥路径将采用格式 [ProviderName]/KeyIdentifier,并且应当为存储在指定 CNG 密钥存储提供程序中的非对称密钥。 用于加密/解密 CEK 的有效算法是“RSA_OAEP”。

EncryptColumnEncryptionKey(String, String, Byte[])

通过使用由密钥路径和指定算法所指定的非对称密钥,对给定的纯文本列加密密钥进行加密。 密钥路径将采用格式 [ProviderName]/KeyIdentifier,并且应当为存储在指定 CNG 密钥存储提供程序中的非对称密钥。 用于加密/解密 CEK 的有效算法是“RSA_OAEP”。

SignColumnMasterKeyMetadata(String, Boolean)

在所有情况下都会引发 NotSupportedException 异常。

VerifyColumnMasterKeyMetadata(String, Boolean, Byte[])

此函数必须由相应的密钥存储提供程序实现。 此函数应使用由密钥路径标识的非对称密钥,并对由 (masterKeyPath, allowEnclaveComputations, providerName) 组成的主密钥元数据进行验证。

适用于