BACKUP MASTER KEY(Transact-SQL)

적용 대상: SQL Server Azure SQL Managed Instance

데이터베이스 마스터 키를 내보냅니다.

중요

SQL Server 2022(16.x)에서는 Azure Blob Storage 간에 데이터베이스 마스터 키에 대한 백업 및 복원 지원을 도입했습니다. 이 구문은 URL SQL Server 2022(16.x) 이상에서만 사용할 수 있습니다.

Transact-SQL 구문 규칙

구문

BACKUP MASTER KEY TO 
  {
    FILE = 'path_to_file'
  | URL = 'Azure Blob storage URL'
  }   
    ENCRYPTION BY PASSWORD = 'password'  

참고

SQL Server 2014 이전 버전의 Transact-SQL 구문을 보려면 이전 버전 설명서를 참조하세요.

인수

FILE ='path_to_file'
마스터 키를 내보낼 파일에 대한 파일 이름을 포함한 전체 경로를 지정합니다. 경로는 로컬 경로 또는 네트워크 위치에 대한 UNC 경로일 수 있습니다.

URL =‘Azure Blob storage URL
적용 대상: SQL Server 2022(16.x) 이상
Azure Blob Storage의 URL로, https://<storage_account_name>.blob.core.windows.net/<storage_container_name>/<backup_file_name>.bak과 비슷한 형식을 사용합니다.

ENCRYPTION BY PASSWORD ='password'
파일의 마스터 키를 암호화하는 데 사용되는 암호입니다. 이 암호의 복잡성을 확인해야 합니다. 자세한 내용은 Password Policy을 참조하세요.

설명

마스터 키를 열어야 하기 때문에 백업하기 전에 암호를 해독해야 합니다. 서비스 마스터 키를 사용하여 암호화된 경우 마스터 키를 명시적으로 열 필요가 없습니다. 하지만 마스터 키가 암호로만 암호화된 경우 명시적으로 열어야 합니다.

마스터 키가 만들어지는 즉시 백업하고 안전한 오프사이트 위치에 백업을 저장합니다.

Azure Blob Storage에 인증

적용 대상: SQL Server 2022(16.x) 이상.

데이터베이스 마스터 키를 Azure Blob Storage에 백업하려면 다음 필수 구성 요소가 적용됩니다.

  1. Azure Storage 계정이 있습니다.

  2. 저장된 액세스 정책 및 공유 액세스 스토리지를 만듭니다.

  3. 공유 액세스 서명을 사용하여 SQL Server 자격 증명을 만듭니다.

    자세한 내용은 자습서: SQL Server와 함께 Azure Blob Storage 사용을 참조하세요.

사용 권한

데이터베이스에 대한 CONTROL 권한이 필요합니다.

예제

다음 예에서는 파일에 대한 AdventureWorks2012 마스터 키의 백업을 만듭니다. 이 마스터 키는 서비스 마스터 키로 암호화되지 않았기 때문에 마스터 키를 열려면 암호를 지정해야 합니다.

USE AdventureWorks2012;  
OPEN MASTER KEY DECRYPTION BY PASSWORD = 'sfj5300osdVdgwdfkli7';  
BACKUP MASTER KEY TO FILE = 'c:\temp\AdventureWorks2012_master_key'   
    ENCRYPTION BY PASSWORD = 'sd092735kjn$&adsg';  
GO   

다음 예에서는 Azure Blob Storage에 대한 AdventureWorks2012 마스터 키의 백업을 만듭니다. 이 마스터 키는 서비스 마스터 키로 암호화되지 않았기 때문에 마스터 키를 열려면 암호를 지정해야 합니다.

USE AdventureWorks2012;  
OPEN MASTER KEY DECRYPTION BY PASSWORD = 'sfj5300osdVdgwdfkli7';  
BACKUP MASTER KEY TO URL = 'https://mydocsteststorage.blob.core.windows.net/mytestcontainer/AdventureWorks2012_master_key.bak'  
    ENCRYPTION BY PASSWORD = 'sd092735kjn$&adsg';  
GO   

참고 항목

CREATE MASTER KEY(Transact-SQL)
OPEN MASTER KEY(Transact-SQL)
CLOSE MASTER KEY(Transact-SQL)
RESTORE MASTER KEY(Transact-SQL)
ALTER MASTER KEY(Transact-SQL)
DROP MASTER KEY(Transact-SQL)
암호화 계층
BACKUP SYMMETRIC KEY