sys.symmetric_keys (Transact-SQL)

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體Azure Synapse AnalyticsAnalytics Platform System (PDW)

針對使用 CREATE SYMMETRIC KEY 語句建立的每個對稱密鑰,各傳回一個數據列。

資料行名稱 資料類型 描述
name sysname 索引鍵的名稱。 資料庫內的唯一。
principal_id int 擁有金鑰的資料庫主體識別碼。
symmetric_key_id int 金鑰的識別碼。 資料庫內的唯一。
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 密碼編譯提供者的演演算法標識碼。 針對非可延伸金鑰管理金鑰,此值會是 NULL。

權限

目錄檢視中元數據的可見度僅限於用戶擁有的安全性實體,或用戶獲授與某些許可權的安全性實體。 如需相關資訊,請參閱 Metadata Visibility Configuration

備註

RC4 演算法已被取代。 SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。

注意

只有 RC4 演算法支援回溯相容性。 只有在資料庫相容性層級為 90 或 100 時,才能使用 RC4 或 RC4_128 加密新資料 (不建議使用)。請改用較新的演算法,例如其中一個 AES 演算法。 在 SQL Server 2012 (11.x) 中,使用 RC4 或 RC4_128 加密的材料可以在任何相容性層級中進行解密。

釐清有關 DES 演算法的資訊:

  • DESX 未正確命名。 以 ALGORITHM = DESX 建立的對稱金鑰實際上使用具有 192 位元金鑰的 TRIPLE DES 加密。 未提供 DESX 演算法。 SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。

  • 以 ALGORITHM = TRIPLE_DES_3KEY 建立的對稱金鑰使用具有 192 位元金鑰的 TRIPLE DES。

  • 以 ALGORITHM = TRIPLE_DES 建立的對稱金鑰使用具有 128 位元金鑰的 TRIPLE DES。

另請參閱

目錄檢視 (Transact-SQL)
可延伸金鑰管理 (EKM)
安全性目錄檢視 (Transact-SQL)
加密階層
CREATE SYMMETRIC KEY (Transact-SQL)