sys.symmetric_keys (Transact-SQL)

对于使用 CREATE SYMMETRIC KEY 语句创建的每个对称密钥,返回与其对应的一行。

列名

数据类型

说明

name

sysname

密钥的名称。在数据库中是唯一的。

principal_id

int

拥有密钥的数据库主体的 ID。

symmetric_key_id

int

密钥的 ID。在数据库中是唯一的。

key_length

int

密钥的长度(位)。

key_algorithm

char(2)

密钥使用的算法:

R2 = RC2

R4 = RC4

D = DES

D3 = Triple DES

DT = TRIPLE_DES_3KEY

DX = DESX

A1 = AES 128

A2 = AES 192

A3 = AES 256

NA = EKM 密钥

algorithm_desc

nvarchar(60)

对于密钥所用算法的说明:

RC2

RC4

DES

Triple_DES

TRIPLE_DES_3KEY

DESX

AES_128

AES_192

AES_256

NULL(仅限于可扩展密钥管理算法)

create_date

datetime

密钥的创建日期。

modify_date

datetime

密钥的修改日期。

key_guid

uniqueidentifier

与密钥关联的全局唯一标识符 (GUID)。对于持久化密钥,此标识符是自动生成的。临时密钥的 GUID 从用户提供的密码中派生。

key_thumbprint

sql_variant

密钥的 SHA-1 哈希。该哈希是全局唯一的。对于非可扩展密钥管理密钥,此值将为 NULL。

provider_type

nvarchar(120)

加密提供程序的类型:

CRYPTOGRAPHIC PROVIDER = 可扩展密钥管理密钥

NULL = 非可扩展密钥管理密钥

cryptographic_provider_guid

uniqueidentifier

加密提供程序的 GUID。对于非可扩展密钥管理密钥,此值将为 NULL。

cryptographic_provider_algid

sql_variant

加密提供程序的算法 ID。对于非可扩展密钥管理密钥,此值将为 NULL。

权限

在 SQL Server 2005 及更高版本中,目录视图中仅显示用户拥有的安全对象的元数据,或用户对其拥有某些权限的安全对象的元数据。有关详细信息,请参阅元数据可见性配置

注释

不推荐使用 RC4 算法。后续版本的 Microsoft SQL Server 将删除该功能。请不要在新的开发工作中使用该功能,并尽快修改当前还在使用该功能的应用程序。

关于 DES 算法的说明:

  • DESX 的命名不正确。使用 ALGORITHM = DESX 创建的对称密钥实际上使用的是具有 192 位密钥的 TRIPLE DES 密码。不提供 DESX 算法。后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。

  • 使用 ALGORITHM = TRIPLE_DES_3KEY 创建的对称密钥使用的是具有 192 位密钥的 TRIPLE DES。

  • 使用 ALGORITHM = TRIPLE_DES 创建的对称密钥使用的是具有 128 位密钥的 TRIPLE DES。