Aracılığıyla paylaş


Başka bir SQL Server veritabanına korumalı bir tde taşıma

Bu konuda korumak için gereken adımları açıklar bir SQL Server veritabanı saydam veri şifrelemesi (tde) kullanarak ve sonra veritabanının başka bir yere taşımak örnek , SQL Server.

Bu konudaki

  • Başlamadan önce:

    Arka Plan

    Güvenlik

  • Örnek:

    Saydam veri tarafından korunan bir veritabanı oluşturmak içinşifreleme

    Korumalı veritabanı yeni bir sql Server örnek tde taşımak için

  • Takip etmek: Veritabanına yeni bir sql Server örnek tde taşıdıktan sonra atılacak adımlar korumalı

Arka Plan

tde gerçekleştiren gerçek -saat g/Ç şifreleme ve şifre çözme veri ve günlük dosyaları.Şifreleme kurtarma sırasında kullanılabilirlik için veritabanı önyükleme kaydında depolanan bir veritabanı şifreleme anahtar (dek) kullanır.dek bir simetrik anahtar dizininde depolanan bir sertifika kullanarak güvenli olduğu master veritabanı sunucusu veya bir asimetrik anahtar korunan bir ekm modülü.Veritabanında korumalı bir tde taşıma, sertifika ya da dek açmak için kullanılan asimetrik anahtar de taşımanız gerekir.Sertifika veya asimetrik anahtar yüklü olması gerekir ana hedef sunucuda veritabanı böylece SQL Server erişebileceğiniz veritabanı dosyaları.Daha fazla bilgi için bkz: Saydam veri şifrelemesi (tde) Anlama.

Güvenlik

İzinler

Gerektirir CONTROL DATABASE izni ana veritabanı ana anahtar oluşturmak için veritabanı.

Gerektirir CREATE CERTIFICATE izni ana dek koruyan bir sertifika oluşturmak için veritabanı.

Gerektirir CONTROL DATABASE şifrelenmiş veritabanı izni ve VIEW DEFINITION sertifika veya şifrelemek için kullanılan asimetrik anahtar izniveritabanı şifreleme anahtarı.

[Top]

Veritabanında korumalı bir tde oluşturma

Bir veritabanı şifreleme anahtar kullanılarak saydam veri şifrelemesi ile korunan bir veritabanı oluşturmak için bir sertifika tarafından korunan ana veritabanı.

Saydam veri tarafından korunan bir veritabanı oluşturmak içinşifreleme

  1. Sorgu Düzenleyicisi'nde aşağıdaki girin Transact-SQL veritabanı ana anahtar ve bir sertifika oluşturmak için komutlar ana veritabanı.

    Güvenlik notuGüvenlik Notu

    Yıldız parolayla değiştirin.Boş parola kullanmayın. Güçlü bir parola kullanın.

    USE master ;
    GO
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = '**************';
    GO
    CREATE CERTIFICATE TestSQLServerCert 
    WITH SUBJECT = 'Certificate to protect TDE key'
    GO
    
  2. Sunucu yedeğini oluşturmak sertifika , ana veritabanı.Yoksa veritabanı şifreleme korumak için kullanılan sertifika anahtar olan kayıp, tde korumalı veritabanındaki veri erişim olanağına sahip olur.Aşağıdaki örnek deposu yedek sertifika ve özel anahtar dosyası, bu örneği için varsayılan veri konumda SQL Server ()C:\Program Files\Microsoft sql Server\MSSQL10.mssqlserver\mssql\data).

    Güvenlik notuGüvenlik Notu

    Sertifikayı kurtarmak için sertifika dosyasını hem de özel anahtar dosyası kopyasını saklamanız gerekir.Özel anahtar için parola veritabanı ana anahtar parolası ile aynı olacak şekilde yok.

    BACKUP CERTIFICATE TestSQLServerCert 
    TO FILE = 'TestSQLServerCert'
    WITH PRIVATE KEY 
    (
        FILE = 'SQLPrivateKeyFile',
        ENCRYPTION BY PASSWORD = '**************'
    );
    GO
    
  3. tde tarafından korunması için bir veritabanı oluşturun.

    CREATE DATABASE CustRecords ;
    GO
    
  4. Yeni veritabanına geçin.Sunucu tarafından korunan bir veritabanı şifreleme anahtar oluşturmak sertifika , ana veritabanı.tde kullanarak veritabanını şifrelemek için yeni bir veritabanı sonra alter.

    USE CustRecords;
    GO
    CREATE DATABASE ENCRYPTION KEY
    WITH ALGORITHM = AES_128
    ENCRYPTION BY SERVER CERTIFICATE TestSQLServerCert;
    GO
    ALTER DATABASE CustRecords
    SET ENCRYPTION ON;
    GO
    

    Not

    Gerçekleştirilmesi için bu adımı kullanarak SQL Server Management Studio, Object Explorer'da veritabanını sağ tıklatın, Görevler'in üzerine gelin ve sonra ' Veritabanı şifreleme yönetmek.Use Veritabanı şifreleme yönetmek bir veritabanı şifreleme anahtar seçin ve veritabanı şifreleme küme iletişim kutusu.

  5. Basit bir tablo oluşturun.Veri girebileceği tablo ve sonra arasından seçim tablo veritabanını test etmek için.

    CREATE TABLE CustomerRecord
        (CustomerID int PRIMARY KEY,
        SecretData nvarchar(100) NOT NULL) ;
    GO
    INSERT CustomerRecord (CustomerID,SecretData)
    VALUES (23997, 'Plain text data') ;
    GO
    SELECT CustomerID, SecretData FROM CustomerRecord ;
    GO
    

[Top]

Veritabanında korumalı bir tde taşıma

Veritabanına yeni bir sql Server örnek tde taşımak için korumalı

  1. Kaynak sunucudan tde korumalı veritabanının bağlantısını kesin.

    USE master ;
    GO
    EXEC master.dbo.sp_detach_db @dbname = N'CustRecords';
    GO
    

    Not

    Bu adımı kullanarak gerçekleştirmek için Management Studio, Object Explorer'da veritabanını sağ tıklatın, Görevler'in üzerine gelin ve sonra ' Ayır.Tamam’ı tıklatın.

  2. Pencere Explorer'ı kullanarak taşıma veya veritabanı dosyalarını kaynak sunucudan hedef sunucuda aynı konuma kopyalayın.

    Not

    Normalde iki veritabanı dosyaları (CustomerRecords.mdf ve CustomerRecords_log.ldf) varsayılan konumda C:\Program Files\Microsoft sql Server\MSSQL10.mssqlserver\mssql\data.Dosya adları ve konumları farklı olabilir.

  3. Windows Gezgini'ni kullanarak taşıma veya yedek sunucu sertifika ve özel anahtar dosyası kaynak sunucudan hedef sunucuda aynı konuma kopyalayın.Örneğimizde, bu dosyalar varsayılan veri klasörü saklanır C:\Program Files\Microsoft sql Server\MSSQL10.mssqlserver\mssql\data.

  4. Hedef örnek üzerinde bir veritabanı ana anahtar oluşturma SQL Server.Parolayı kaynak sunucu ile aynı olması gerekmez.

    USE master;
    GO
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = '**************';
    GO
    
  5. Sunucu yeniden sertifika özgün sunucu kullanarak sertifika yedekleme dosyası.Parola yedek oluşturulurken kullanılan parola ile aynı olmalıdır.

    CREATE CERTIFICATE TestSQLServerCert 
    FROM FILE = 'TestSQLServerCert'
    WITH PRIVATE KEY 
    (
        FILE = 'SQLPrivateKeyFile',
        DECRYPTION BY PASSWORD = '**************'
    );
    GO
    
  6. Taşındığı veritabanı iliştirin.yol Veritabanı dosyaları nerede depoladığınız veritabanı dosyalarının konumu olması gerekir.

    CREATE DATABASE [CustRecords] ON 
    ( FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\CustRecords.mdf' ),
    ( FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\CustRecords_log.LDF' )
    FOR ATTACH ;
    GO
    

    Not

    Gerçekleştirilmesi için bu adımı kullanarak Management Studio, te Object Explorer, sağ veritabanlarıve i Ekle.' I Ekle bulmak için CustRecords.mdf dosya ve i Tamam.

  7. Sınama veritabanına erişim verileri seçerek tablo.

    USE CustRecords ;
    GO
    SELECT CustomerID, SecretData FROM CustomerRecord ;
    GO
    

    [Top]

Takip etmek: Veritabanına yeni bir sql Server örnek tde taşıdıktan sonra atılacak adımlar korumalı

asıl veritabanı yedekleme

  • Sertifika yükleme ve veritabanını iliştirmek bilgileri değişti asıl veritabanı.Yeni oluşturduğunuz yedek asıl veritabanı.

[Top]