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
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 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
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 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
tde tarafından korunması için bir veritabanı oluşturun.
CREATE DATABASE CustRecords ; GO
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.
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ı
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.
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.
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.
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
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
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.
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]
Ayrıca bkz.