sys.column_master_keys (Transact-SQL)

适用于: SQL Server 2016 (13.x) 及更高版本 Azure SQL 数据库Azure SQL 托管实例

使用 CREATE MASTER KEY 语句为添加的每个数据库主密钥 返回一行。 每行表示单个列主密钥(CMK)。

列名称 数据类型 说明
name sysname CMK 的名称。
column_master_key_id int 列主密钥的 ID。
create_date datetime 创建列主密钥的日期。
modify_date datetime 上次修改列主密钥的日期。
key_store_provider_name sysname 包含 CMK 的列主密钥存储的提供程序的名称。 允许值包括:

MSSQL_CERTIFICATE_STORE - 如果列主密钥存储是证书存储区。

用户定义的值,如果列主密钥存储是自定义类型。
key_path nvarchar(4000) 特定于列的主密钥存储密钥路径。 路径的格式取决于列主密钥存储类型。 示例:

'CurrentUser/Personal/'<thumbprint>

对于自定义列主密钥存储,开发人员负责定义自定义列主密钥存储的密钥路径。
allow_enclave_computations bit 指示列主密钥是否已启用 enclave(如果使用此主密钥加密的列加密密钥)可用于服务器端安全 enclave 内的计算。 有关详细信息,请参阅具有安全 enclave 的 Always Encrypted
签名 varbinary(max) 由key_path引用的列主密钥生成的key_pathallow_enclave_computations数字签名。

权限

需要 VIEW ANY COLUMN MASTER KEY 权限。

目录视图中元数据的可见性仅限于用户拥有的安全对象,或者向用户授予了某些权限的安全对象。 有关详细信息,请参阅 Metadata Visibility Configuration

另请参阅

CREATE COLUMN MASTER KEY (Transact-SQL)
安全性目录视图 (Transact-SQL)
sys.column_encryption_key_values (Transact-SQL)
Always Encrypted
Always Encrypted 密钥管理概述
管理具有安全 enclave 的 Always Encrypted 的密钥