암호화된 백업 만들기Create an Encrypted Backup

이 항목에서는 Transact-SQL을 사용하여 암호화된 백업을 만드는 데 필요한 단계에 대해 설명합니다.This topic describes the steps necessary to create an encrypted backup using Transact-SQL. SQL Server Management StudioSQL Server Management Studio사용에 대한 예는 전체 데이터베이스 백업 만들기(SQL Server)를 참조하세요.For an example using SQL Server Management StudioSQL Server Management Studio, see Create a Full Database Backup (SQL Server).

암호화하여 디스크에 백업Backup to Disk with Encryption

사전 요구 사항:Prerequisites:

  • 데이터베이스의 백업을 만드는 데 적합한 공간이 있는 로컬 디스크나 저장소에 대한 액세스 권한Access to a local disk or to storage with adequate space to create a backup of the database.

  • master 데이터베이스의 데이터베이스 마스터 키 및 SQL Server 인스턴스에서 사용할 수 있는 인증서 또는 비대칭 키.A Database Master Key for the master database, and a certificate or asymmetric key available on the instance of SQL Server. 암호화 요구 사항과 사용 권한에 대한 자세한 내용은 Backup Encryption를 참조하십시오.For encryption requirements and permissions, see Backup Encryption.

    다음 단계를 사용하여 로컬 디스크에 데이터베이스의 암호화된 백업을 만들 수 있습니다.Use the following steps to create an encrypted backup of a database to a local disk. 이 예에서는 MyTestDB라는 사용자 데이터베이스를 사용합니다.This example uses a user database called MyTestDB.

  1. 마스터 데이터베이스의 데이터베이스 마스터 키 생성: 데이터베이스에 저장되는 마스터 키의 복사본을 암호화하기 위한 암호를 선택합니다.Create a Database Master Key of the master database: Choose a password for encrypting the copy of the master key that will be stored in the database. 데이터베이스 엔진에 연결하고 새 쿼리 창을 시작한 다음 아래의 예를 복사하여 붙여 넣고 실행을 클릭합니다.Connect to the database engine, start a new query windows and copy and paste the following example and click Execute.

    -- Creates a database master key.   
    -- The key is encrypted using the password "<master key password>"  
    USE master;  
    GO  
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<master key password>';  
    GO  
    
  2. 백업 인증서 만들기: master 데이터베이스에 백업 인증서를 만듭니다.Create a Backup Certificate: Create a backup certificate in the master database. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute

    Use Master  
    GO  
    CREATE CERTIFICATE MyTestDBBackupEncryptCert  
       WITH SUBJECT = 'MyTestDB Backup Encryption Certificate';  
    GO  
    
  3. 데이터베이스 백업: 사용할 암호화 알고리즘과 인증서를 지정합니다.Backup the database: Specify the encryption algorithm and certificate to use. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute.

    BACKUP DATABASE [MyTestDB]  
    TO DISK = N'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\MyTestDB.bak'  
    WITH  
      COMPRESSION,  
      ENCRYPTION   
       (  
       ALGORITHM = AES_256,  
       SERVER CERTIFICATE = MyTestDBBackupEncryptCert  
       ),  
      STATS = 10  
    GO  
    

    EKM에 의해 보호되는 백업을 암호화하는 예제를 보려면 Azure 키 자격 증명 모음을 사용한 확장 가능 키 관리(SQL Server)를 참조하세요.For an example of encrypting a backup protected by an EKM, see Extensible Key Management Using Azure Key Vault (SQL Server).

암호화하여 Windows Azure 저장소에 백업Backup to Windows Azure Storage with Encryption

URL에 대한 SQL Server 백업 옵션을 사용하여 Windows Azure 저장소에 백업을 만드는 경우 암호화 단계는 동일하지만 URL을 대상으로 사용하고 SQL 자격 증명을 사용하여 Windows Azure 저장소에 인증해야 합니다.If you are creating a backup to Windows Azure storage using the SQL Server Backup to URL option, the encryption steps are the same, but you must use URL as the destination and a SQL Credential to authenticate to the Windows Azure storage. 암호화 옵션을 사용하여 Microsoft Azure에 대한 SQL Server Managed BackupSQL Server Managed Backup to Microsoft Azure 을 구성하려면 Microsoft Azure로의 SQL Server 관리되는 백업 사용을 참조하세요.If you want to configure Microsoft Azure에 대한 SQL Server Managed BackupSQL Server Managed Backup to Microsoft Azure with encryption options, see Enable SQL Server Managed Backup to Microsoft Azure.

사전 요구 사항:Prerequisites:

  • Windows 저장소 계정 및 컨테이너.A windows storage account and a container. 자세한 내용은 다음을 참조하십시오.For more information, see. Lesson 1: Create Windows Azure Storage Objects입니다.Lesson 1: Create Windows Azure Storage Objects.

  • master 데이터베이스의 데이터베이스 마스터 키 및 SQL Server 인스턴스에 대한 인증서 또는 비대칭 키.A Database Master Key for the master database, and a certificate or asymmetric key on the instance of SQL Server. 암호화 요구 사항과 사용 권한에 대한 자세한 내용은 Backup Encryption를 참조하십시오.For encryption requirements and permissions, see Backup Encryption.

  1. SQL Server 자격 증명 만들기: SQL Server 자격 증명을 만들려면 데이터베이스 엔진에 연결하고 새 쿼리 창을 연 다음 아래의 예를 복사하여 붙여 넣고 실행을 클릭합니다.Create SQL Server Credential: To create a SQL Server credential, connect to the Database Engine, open a new query window, and copy and paste the following example and click Execute.

    CREATE CREDENTIAL mycredential   
    WITH IDENTITY= 'mystorageaccount' – this is the name of the storage account you specified when creating a storage account    
    , SECRET = '<storage account access key>' – this should be either the Primary or Secondary Access Key for the storage account  
    
  2. 데이터베이스 마스터 키 생성: 데이터베이스에 저장되는 마스터 키의 복사본을 암호화하기 위한 암호를 선택합니다.Create a Database Master Key: Choose a password for encrypting the copy of the master key that will be stored in the database. 데이터베이스 엔진에 연결하고 새 쿼리 창을 시작한 다음 아래의 예를 복사하여 붙여 넣고 실행을 클릭합니다.Connect to the database engine, start a new query windows and copy and paste the following example and click Execute.

    -- Creates a database master key.  
    -- The key is encrypted using the password "<master key password>"  
    USE Master;  
    GO  
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<master key password>';  
    GO  
    
  3. 백업 인증서 만들기: master 데이터베이스에 백업 인증서를 만듭니다.Create a Backup Certificate: Create a Backup Certificate in the master database. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example in the query window and click Execute

    USE Master;  
    GO  
    CREATE CERTIFICATE MyTestDBBackupEncryptCert  
       WITH SUBJECT = 'MyTestDBBackupEncryptCert ';  
    GO  
    
  4. 데이터베이스 백업: 사용할 암호화 알고리즘과 인증서를 지정합니다.Backup the database: Specify the encryption algorithm and the certificate to use. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute.

    BACKUP DATABASE [MyTestDB]  
    TO URL = N'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\MyTestDB.bak'  
    WITH  
      CREDENTIAL 'mycredential' – this is the name of the credential created in the first step.  
      ,COMPRESSION  
      ,ENCRYPTION   
       (  
       ALGORITHM = AES_256,  
       SERVER CERTIFICATE = MyTestDBBackupEncryptCert  
       ),  
      STATS = 10  
    GO