sys.symmetric_keys (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics 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)