Share via


SqlColumnEncryptionKeyStoreProvider.ColumnEncryptionKeyCacheTtl 属性

定义

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

public:
 virtual property Nullable<TimeSpan> ColumnEncryptionKeyCacheTtl { Nullable<TimeSpan> get(); void set(Nullable<TimeSpan> value); };
public virtual TimeSpan? ColumnEncryptionKeyCacheTtl { get; set; }
member this.ColumnEncryptionKeyCacheTtl : Nullable<TimeSpan> with get, set
Public Overridable Property ColumnEncryptionKeyCacheTtl As Nullable(Of TimeSpan)

属性值

注解

在内部,) 解密列加密密钥后 (缓存。 这对于快速解密多个数据值很有用。 默认值为 2 小时。 将此值设置为零会禁用缓存。

不会缓存在连接或命令实例上注册的自定义密钥存储提供程序解密的列加密密钥。 自定义密钥存储提供程序应实现其自己的缓存机制。

如果使用 注册 RegisterColumnEncryptionKeyStoreProviders(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>)密钥存储提供程序实例,则驱动程序将禁用由自定义密钥存储提供程序实现的缓存。 任何缓存实现都应在缓存列加密密钥之前引用此属性的值,如果值为零,则不对其进行缓存。 这将避免重复缓存,并防止用户在尝试配置密钥缓存时出现混乱。

适用于