使用 Always Encrypted 匯出和匯入資料庫
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體
本文描述如何匯出和匯入包含以 Always Encrypted 所保護資料行的資料庫。
當您匯出資料庫時,加密資料行中所儲存所有資料都會自加密格式 (加密文字) 的資料庫中擷取並放入所產生 BACPAC。 產生的 BACPAC 也會包含永遠加密金鑰的中繼資料。
當您將 BACPAC 匯入資料庫中時,會將 BACPAC 中的加密資料載入資料庫中,並且重新建立永遠加密金鑰中繼資料。
如果應用程式設定成查詢儲存在來源資料庫 (您匯出的資料庫) 的加密資料行,則您不需要執行任何特殊作業就可讓應用程式查詢目標資料庫中的加密資料,因為兩個資料庫中的金鑰相同。
如需如何匯出和匯入資料庫的詳細資訊,請參閱:
- 匯出資料層應用程式
- 匯入 BACPAC 檔案以建立新的使用者資料庫
- 將 Azure SQL 資料庫匯出至 BACPAC 檔案
- 將 BACPAC 檔案匯入到 Azure SQL Database 中的資料庫
- SqlPackage
移轉具有加密資料行資料庫的權限
您需要具有來源資料庫的 ALTER ANY COLUMN MASTER KEY 和 ALTER ANY COLUMN ENCRYPTION KEY 。 您需要具有目標資料庫的 ALTER ANY COLUMN MASTER KEY、ALTER ANY COLUMN ENCRYPTION KEY、VIEW ANY COLUMN MASTER KEY DEFINITION 和 VIEW ANY COLUMN ENCRYPTION DEFINITION。
您不需要存取針對加密資料行設定的資料行主要金鑰,因為在匯出和匯入作業期間,資料會保持加密狀態。