sys.dm_database_encryption_keys (Transact-SQL)

適用于:SQL Server (所有支援的版本) Azure SQL Database Azure SQL 受控執行個體

傳回關於資料庫加密狀態及其相關聯之資料庫加密金鑰的資訊。 如需資料庫加密的詳細資訊,請參閱透明資料加密 (TDE)

資料行名稱 資料類型 描述
database_id int 資料庫的識別碼。
encryption_state int 指出資料庫已加密或未加密。

0 = 沒有資料庫加密金鑰存在,未加密

1 = 未加密

2 = 加密進行中

3 = 已加密

4 = 金鑰變更進行中

5 = 解密進行中

6 = 保護變更進行中 (正在變更用於加密資料庫加密金鑰的憑證或非對稱金鑰)。
create_date datetime 在建立加密金鑰) ,以 UTC 顯示日期 (。
regenerate_date datetime 顯示 (UTC) 重新產生加密金鑰的日期。
modify_date datetime 在修改加密金鑰) ,以 UTC 顯示日期 (。
set_date datetime 顯示 UTC () 加密金鑰套用至資料庫的日期。
opened_date datetime 顯示上次開啟資料庫金鑰) UTC (的時間。
key_algorithm nvarchar(32) 顯示用於金鑰的演算法。
key_length int 顯示金鑰的長度。
encryptor_thumbprint varbinary(20) 顯示加密程式的指模。
encryptor_type nvarchar(32) 適用于:SQL Server (SQL Server 2012 (11.x) 到目前版本) 。

描述加密程式。
percent_complete real 資料庫加密狀態變更的完成百分比。 如果沒有狀態變更,這將會是 0。
encryption_state_desc nvarchar(32) 適用于:SQL Server 2019 (15.x) 及更新版本。

字串,指出資料庫是否已加密。



加密

加密

DECRYPTION_IN_PROGRESS

ENCRYPTION_IN_PROGRESS

KEY_CHANGE_IN_PROGRESS

PROTECTION_CHANGE_IN_PROGRESS
encryption_scan_state int 適用于:SQL Server 2019 (15.x) 及更新版本。

表示加密掃描的目前狀態。

0 = 未起始掃描,未啟用 TDE

1 = 掃描正在進行中。

2 = 掃描正在進行中,但已暫停,使用者可以繼續。

3 = 因為某些原因而中止掃描,需要手動介入。 請連絡 Microsoft 支援服務 以取得更多協助。

4 = 掃描已成功完成,TDE 已啟用且加密已完成。
encryption_scan_state_desc nvarchar(32) 適用于:SQL Server 2019 (15.x) 及更新版本。

表示加密掃描目前狀態的字串。



RUNNING

SUSPENDED

ABORTED

完成
encryption_scan_modify_date datetime 適用于:SQL Server 2019 (15.x) 及更新版本。

顯示上次修改加密掃描狀態的 UTC (日期) 。

權限

在SQL Server和SQL 受管理執行個體上,需要 VIEW SERVER STATE 許可權。

在SQL Database基本S0S1服務目標上,以及彈性集區中的資料庫,需要伺服器管理員帳戶、Azure Active Directory 系統管理員帳戶或伺服器角色的成員 ##MS_ServerStateReader## 資格。 在所有其他SQL Database服務目標上, VIEW DATABASE STATE 需要資料庫的許可權或伺服器角色的成員 ##MS_ServerStateReader## 資格。

另請參閱

安全性相關的動態管理檢視和函數 (Transact-SQL)
透明資料加密 (TDE)
SQL Server 加密
SQL Server 和資料庫加密金鑰 (資料庫引擎)
加密階層
ALTER DATABASE SET 選項 (Transact-SQL)
CREATE DATABASE ENCRYPTION KEY (Transact-SQL)
ALTER DATABASE ENCRYPTION KEY (Transact-SQL)
DROP DATABASE ENCRYPTION KEY (Transact-SQL)