Freigeben über


Lektion 5. (Optional) Verschlüsseln Der Datenbank mithilfe von TDE

Als optionaler Schritt können Sie die neu erstellte Datenbank verschlüsseln. Transparente Datenverschlüsselung (TDE) führt echtzeitbasierte E/A-Verschlüsselung und Entschlüsselung der Daten- und Protokolldateien durch. Diese Art von Verschlüsselung verwendet einen Datenbankverschlüsselungsschlüssel (DEK), der im Datenbankstartdatensatz für die Verfügbarkeit während der Wiederherstellung gespeichert wird. Weitere Informationen finden Sie unter Transparent Data Encryption (TDE) und Verschieben einer TDE-geschützten Datenbank in einen anderen SQL Server.

In dieser Lektion wird davon ausgegangen, dass Sie die folgenden Schritte bereits abgeschlossen haben:

  • Sie verfügen über ein Azure-Speicherkonto.

  • Sie haben einen Container unter Ihrem Azure Storage-Konto erstellt.

  • Sie haben eine Richtlinie für einen Container mit Lese-, Schreib- und Listenrechten erstellt. Sie haben auch einen SAS-Schlüssel generiert.

  • Sie haben auf dem Quellcomputer eine SQL Server-Anmeldeinformationen erstellt.

  • Sie haben eine Datenbank erstellt, indem Sie die in Lektion 4 beschriebenen Schritte ausführen.

Wenn Sie eine Datenbank verschlüsseln möchten, führen Sie die folgenden Schritte aus:

  1. Ändern Sie auf dem Quellcomputer die folgenden Anweisungen in einem Abfragefenster, und führen Sie sie aus:

    
    -- Create a master key and a server certificate   
    USE master   
    GO   
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'MySQLKey01';   
    GO   
    CREATE CERTIFICATE MySQLCert WITH SUBJECT = 'SQL - Azure Storage Certification'   
    GO   
    -- Create a backup of the server certificate in the master database.   
    -- Store TDS certificates in the source machine locally.   
    BACKUP CERTIFICATE MySQLCert   
    TO FILE = 'C:\certs\MySQLCert.CER'   
    WITH PRIVATE KEY   
    (   
    FILE = 'C:\certs\MySQLPrivateKeyFile.PVK',   
    ENCRYPTION BY PASSWORD = 'MySQLKey01'   
    );  
    
    
  2. Verschlüsseln Sie dann Ihre neue Datenbank auf dem Quellcomputer, indem Sie die folgenden Schritte ausführen:

    
    -- Switch to the new database.   
    -- Create a database encryption key, that is protected by the server certificate in the master database.    
    -- Alter the new database to encrypt the database using TDE.   
    USE TestDB1;   
    GO   
    -- Encrypt your database   
    CREATE DATABASE ENCRYPTION KEY   
    WITH ALGORITHM = AES_256   
    ENCRYPTION BY SERVER CERTIFICATE MySQLCert   
    GO   
    
    ALTER DATABASE TestDB1   
    SET ENCRYPTION ON   
    GO  
    
    

Wenn Sie den Verschlüsselungsstatus einer Datenbank und der zugehörigen Datenbankverschlüsselungsschlüssel erlernen möchten, führen Sie die folgende Anweisung aus:

  
SELECT * FROM sys.dm_database_encryption_keys;   
GO  
  

Ausführliche Informationen zu den in dieser Lektion verwendeten Transact-SQL Anweisungen finden Sie unter CREATE DATABASE (SQL Server Transact-SQL), ALTER DATABASE (Transact-SQL), CREATE MASTER KEY (Transact-SQL), CREATE CERTIFICATE (Transact-SQL) und sys.dm_database_encryption_keys (Transact-SQL).

Nächste Lektion:

Lektion 6: Migrieren einer Datenbank von einem lokalen Quellcomputer zu einem Zielcomputer in Azure