RESTORE SYMMETRIC KEY (Transact-SQL)

適用於:SQL Server 2022 (16.x)

注意

SQL Server 2022 (16.x) 引進了對匯出和匯入對稱金鑰的支援,無論是往返 Azure Blob 儲存體或檔案。

匯入對稱金鑰。

Transact-SQL 語法慣例

語法

RESTORE SYMMETRIC KEY key_name FROM 
  {
    FILE = 'path_to_file'
  | URL = 'Azure Blob storage URL'
  }
      DECRYPTION BY PASSWORD = 'password'
      ENCRYPTION BY PASSWORD = 'password' 

引數

FILE ='path_to_file'
指定要作為對稱金鑰匯出目的地之檔案的完整路徑,包括檔案名稱。 路徑可以是本機路徑或是通往網路位置的 UNC 路徑。

URL ='Azure Blob 儲存體 URL' 是 Azure Blob 儲存體 的 URL,格式類似 https://<storage_account_name>.blob.core.windows.net/<storage_container_name>/<backup_file_name>.bak

DECRYPTION BY PASSWORD ='password' 指定解密從檔案匯入的對稱金鑰所需的密碼。

ENCRYPTION BY PASSWORD ='password'
指定對稱金鑰載入資料庫後用來加密該金鑰的密碼。 這個密碼必須遵守複雜性檢查。 如需詳細資訊,請參閱< Password Policy>。

必要條件

若要從 Azure Blob 儲存體還原對稱金鑰,您需要:

  1. 具有對稱金鑰備份的 Azure 儲存體帳戶
  2. 建立預存存取原則和共用存取儲存體
  3. 使用共用存取簽章建立 SQL Server 認證

如需詳細資訊,請參閱教學課程:搭配 SQL Server 使用 Azure Blob 儲存體

權限

需要對稱金鑰的 ALTER 權限。 如果利用憑證或非對稱金鑰來新增加密,則需要該憑證或非對稱金鑰的 VIEW DEFINITION 權限。 如果利用憑證或非對稱金鑰來卸除加密,則需要該憑證或非對稱金鑰的 CONTROL 權限。

範例

在下列範例中,對稱金鑰會從檔案還原。

RESTORE SYMMETRIC KEY symmetric_key
   FROM FILE = 'c:\temp_backups\keys\symmetric_key' 
   DECRYPTION BY PASSWORD = '3dH85Hhk003#GHkf02597gheij04'   
   ENCRYPTION BY PASSWORD = '259087M#MyjkFkjhywiyedfgGDFD'; 

在下列範例中,對稱金鑰會從 Azure Blob 儲存體還原。

RESTORE SYMMETRIC KEY symmetric_key 
   FROM URL = 'https://mydocsteststorage.blob.core.windows.net/mytestcontainer/symmetric_key.bak'
   DECRYPTION BY PASSWORD = '3dH85Hhk003#GHkf02597gheij04'   
   ENCRYPTION BY PASSWORD = '259087M#MyjkFkjhywiyedfgGDFD'; 

另請參閱

BACKUP SYMMETRIC KEY