sp_enclave_send_keys (Transact-SQL)

適用於:SQL Server 2019 (15.x) 和更新版本 - 僅限 Windows

將資料庫中定義的數據行加密密鑰傳送至與具有安全記憶體保護區的 Always Encrypted 搭配 使用的伺服器端安全記憶體保護區

sp_enclave_send_keys 只會傳送已啟用記憶體保護區的金鑰,並加密使用隨機加密且具有索引的數據行。 針對一般使用者查詢,用戶端驅動程式會提供記憶體保護區,其中包含查詢中計算所需的密鑰。 sp_enclave_send_keys 會傳送資料庫中定義的所有數據行加密金鑰,並用於索引加密數據行。

sp_enclave_send_keys 提供簡單的方法,將金鑰傳送至記憶體保護區,並填入數據行加密密鑰快取,以進行後續的編製索引作業。 使用 sp_enclave_send_keys 開啟:

  • 如果 DBA 無法存取資料行主要金鑰,則為 DBA 重建或改變加密資料庫數據行上的索引或統計數據。 請參閱 使用快取的數據行加密金鑰叫用索引作業。

  • SQL Server 可完成加密數據行上索引的復原。 請參閱 資料庫復原

  • 使用 .NET Framework Data Provider for SQL Server 將數據大量載入加密數據行的應用程式。

若要成功叫 sp_enclave_send_keys用 ,您必須使用針對資料庫連接啟用 Always Encrypted 和記憶體保護區計算來連線到資料庫。 您也必須能夠存取資料行主要密鑰、保護數據行加密金鑰、您要傳送,而且您需要許可權才能存取資料庫中的 Always Encrypted 金鑰元數據。

語法

sp_enclave_send_keys
[ ; ]

引數

這個預存程式沒有自變數。

傳回值

這個預存程式沒有傳回值。

結果集

這個預存程式沒有結果集。

權限

需要 資料庫中的 VIEW ANY COLUMN ENCRYPTION KEY DEFINITIONVIEW ANY COLUMN MASTER KEY DEFINITION 許可權。

範例

EXEC sp_enclave_send_keys;