Aracılığıyla paylaş


Nasıl yapılır: tde ekm kullanma etkinleştir

Saydam veri şifreleme (tde) tüm veritabanı depolama şifreler.tde veritabanı şifreleme anahtarı olarak adlandırılan bir simetrik anahtar kullanarak verileri şifreler.Bu konuda bir Genişletilebilir Anahtar Yönetimi (ekm) modülünde depolanan bir asimetrik anahtar kullanarak veritabanını şifreleme anahtarını korumak nasıl açıklar.

Veritabanı şifreleme anahtarı veritabanı ana anahtar tarafından korunan bir sertifikayı kullanarak da korunabilir asıl veritabanı.Veritabanı ana anahtar kullanarak veritabanını şifreleme anahtarının koruma hakkında daha fazla bilgi için bkz: Saydam veri şifrelemesi (tde) Anlama.

tde bir ekm kullanma etkinleştir için temel adımlar şunlardır:

  1. ekm sağlayıcı'nı yükleyin.Bu adımdaki yordamlar ekm sağlayıcı gereksinimlerine bağlı olarak değişir, ancak ekm sağlayıcı yerel sertifika deposuna bir sertifika yükleme içerebilir ve kopyalama ekm dll dosyaları üzerine SQL Server bilgisayar.

  2. Yapılandırma SQL Server kullanmak ekm sağlayıcı.

  3. ekm modülü temel kimlik doğrulaması kullanıyorsa, bir kimlik bilgisi oluşturmak ve bir kullanıcı için kimlik bilgileri ekleyin.

  4. ekm sağlayıcı tarafından korunan bir asimetrik anahtar oluşturun.

  5. ekm modülü temel kimlik doğrulaması kullanıyorsa, tarafından kullanılacak asimetrik anahtar tarafından korunan bir kimlik bilgisi oluşturmak Veritabanı Altyapısı.

  6. Bir veritabanı simetrik şifreleme anahtar oluşturun.

  7. tde veritabanı şifreleme kullanarak etkinleştirme anahtar.

Bu konudaki adımları tamamlamak için bağlanmak SQL Server kullanarak bir sorgu Düzenleyicisi penceresinde SQL Server Management Studio.

Yüklemek ve şifreleme sağlayıcı yapılandırmak için

  1. Üzerinde uygun bir konuma ekm sağlayıcı tarafından sağlanan dosyaları kopyalamak SQL Server bilgisayar.Bu örnekte, kullandığımız c:\ekm klasörü.

  2. Sertifikaları kendi ekm gerektirdiği gibi bilgisayara yükleyin sağlayıcı.

    Not

    SQL Server ekm sağlayıcı sağlamaz.Yükleme, yapılandırma ve kullanıcıları yetkilendirmek için farklı yordamlar her ekm sağlayıcı olabilir.Bu adımı tamamlamak için ekm sağlayıcı belgelerine bakın.

ekm sağlayıcı kullanın ve sql Server sağlayıcısı oluşturmak için sql Server'ı yapılandırmak için

  1. ekm sağlayıcı etkinleştirme, Gelişmiş bir seçenektir.İlk olarak, yürütmek Gelişmiş seçenekleri göstermek için aşağıdaki ifadeleri.

    sp_configure 'show advanced options', 1 ;
    GO
    RECONFIGURE ;
    GO
    
  2. Aşağıdaki yürütme deyim ekm sağlayıcılarını etkinleştirmek için:

    sp_configure 'EKM provider enabled', 1 ;
    GO
    RECONFIGURE ;
    GO
    
  3. Çağırmak için seçtiğiniz bir şifreleme sağlayıcı oluşturmak için aşağıdaki deyim yürütme EKM_Prov, temel alınarak ekm sağlayıcı:

    CREATE CRYPTOGRAPHIC PROVIDER EKM_Prov 
    FROM FILE = 'C:\EKM_Files\KeyProvFile.dll' ;
    GO
    

    Not

    ekm dll dijital olarak imzalanmış olması gerekir.

Veritabanını şifrelemek için kullanılan bir kimlik bilgisi oluşturun

Bir veritabanı şifreleme anahtar oluşturmak ve bir veritabanını şifrelemek için (Sistem Yöneticisi) yüksek ayrıcalıklı bir kullanıcı olmanız gerekir.Bu kullanıcı ekm modülü tarafından doğrulanamaz olmalıdır.Aşağıdaki yordam, bir kimlik bilgisi ekm kimliğini kullanan ve yüksek ayrıcalıklı bir kullanıcı için kimlik bilgisi ekler oluşturur.Aşağıdaki yordamlarda ekm modülü adlı bir kullanıcı kimlik doğrulaması varsayılmıştır 'Identity1'.Burada gösterilen yıldız yerine parola sağlanmalıdır.ekm sağlayıcı temel kimlik doğrulamasını kullanır, ancak ekm modülü diğer kimlik doğrulaması kullandığında, bu bölümdeki adımlar atlanabilir adımları gereklidir.

Bir kimlik bilgisi oluşturmak ve bunları yüksek ayrıcalıklı bir kullanıcı oturum açma eklemek için

  1. Aşağıdaki yürütme deyim sistem yöneticileri tarafından kullanılan bir kimlik bilgisi oluşturmak için:

    CREATE CREDENTIAL sa_ekm_tde_cred 
    WITH IDENTITY = 'Identity1', 
    SECRET = '*************' 
    FOR CRYPTOGRAPHIC PROVIDER EKM_Prov ;
    GO
    
  2. Execute the following statement to add the system administrator credential to a high privileged user such as your own domain login in the format [DOMAIN\login]:

    ALTER LOGIN [DOMAIN\login]
    ADD CREDENTIAL sa_ekm_tde_cred ;
    GO
    

Bir asimetrik anahtar oluşturma

Veritabanı şifreleme anahtarına erişimi korumak için bir asimetrik anahtar oluşturun.Bu anahtar tarafından kullanılan SQL Server erişmeyi veritabanı şifreleme anahtarı.

Bir veritabanı şifreleme anahtar oluşturmak için

  • ekm sağlayıcı içinde saklanan bir asimetrik anahtar oluşturmak için aşağıdaki deyim yürütme.Bu örnekte, SQL Server tanımlayacak anahtar adıyla ekm_login_key.ekm aygıt içinde anahtar adı olan SQL_Server_Key.

    Not

    Buradan sizin ekm sağlayıcısı tarafından gerekli parametreleri ve seçenekleri değişebilir deyim.Daha fazla bilgi için bkz: sizin ekm sağlayıcı.

    USE master ;
    GO
    CREATE ASYMMETRIC KEY ekm_login_key 
    FROM PROVIDER [EKM_Prov]
    WITH ALGORITHM = RSA_512,
    PROVIDER_KEY_NAME = 'SQL_Server_Key' ;
    GO
    

    Not

    ekm modülü içinde depolanan asimetrik anahtar kaybolursa, veritabanı tarafından açılması mümkün olmayacak SQL Server.ekm sağlayıcı sağlar, yedeklemek , asimetrik anahtar, oluşturduğunuz bir yedeklemek ve güvenli bir yerde saklayın.

Veritabanı Altyapısı tarafından kullanılacak bir kimlik bilgisi oluşturun

Başlatma sırasında Veritabanı Altyapısı gerekir açık veritabanı.Aşağıdaki yordam ile bir kimlik bilgisi ekm tarafından kimlik doğrulaması için oluşturur ve bir oturum için bir asimetrik anahtar üzerinde temel alan ekler.Kullanıcılar, oturumu kullanan oturum açamıyor, ancak Veritabanı Altyapısı kendisiyle kimlik doğrulamasına görebilirsinizekm aygıt. Aşağıdaki yordamlarda ekm modülü adlı bir kullanıcı kimlik doğrulaması varsayılmıştır 'Identity2'.Yıldız işareti yerine aşağıdaki parola sağlanmalıdır.ekm sağlayıcı temel kimlik doğrulamasını kullanır, ancak ekm modülü diğer kimlik doğrulaması kullandığında, bu bölümdeki adımlar atlanabilir adımları gereklidir.

Kimlik bilgileri oluşturmak ve bunları oturuma eklemek için

  1. Tarafından kullanılan bir kimlik bilgisi oluşturmak için aşağıdaki deyim yürütme Veritabanı Altyapısı:

    CREATE CREDENTIAL ekm_tde_cred 
    WITH IDENTITY = 'Identity2' 
    , SECRET = '*************' 
    FOR CRYPTOGRAPHIC PROVIDER EKM_Prov ;
    
  2. tde tarafından kullanılan bir oturumu eklemek için aşağıdaki deyim yürütme ve oturum açma için yeni kimlik bilgileri ekleyin:

    CREATE LOGIN EKM_Login 
    FROM ASYMMETRIC KEY ekm_login_key ;
    GO
    
    ALTER LOGIN EKM_Login 
    ADD CREDENTIAL ekm_tde_cred ;
    GO
    

Veritabanı şifreleme anahtarı oluşturma

Veritabanı şifreleme anahtar olan bir simetrik anahtar.Veritabanı şifreleme anahtar oluşturmak asıl veritabanı.

Bir veritabanı şifreleme anahtar oluşturmak için

  1. Şifrelenmiş veritabanını aşağıdaki ile Değiştir:

    USE AdventureWorks2008R2 ;
    GO
    
  2. tde için kullanılan veritabanı şifreleme anahtar oluşturmak için aşağıdaki kod yürütün:

    CREATE DATABASE ENCRYPTION KEY
    WITH ALGORITHM  = AES_128
    ENCRYPTION BY SERVER ASYMMETRIC KEY ekm_login_key ;
    GO
    
  3. Saydam veri sağlamak için veritabanını değiştirmek için aşağıdaki kod yürütün şifreleme:

    ALTER DATABASE AdventureWorks2008R2 
    SET ENCRYPTION ON ;
    GO
    

    Veritabanı artık şifrelenmiş biçimde depolanır.

Güvenlik

Bu konu aşağıdaki izinleri kullanır:

  • Yeniden yapılandırma çalıştırın ve yapılandırma seçeneği değiştirmek için deyim, alter ayarlar sunucu düzey izni verilmiş olması gerekir.AYARLARI değiştirme izni sysadmin ve sunucu rolleri sabit serveradmin'e üye tarafından dolaylı olarak tutulur.

  • alter any CREDENTIAL izni gerektirir.

  • alter any LOGIN izni gerektirir.

  • ASİMETRİK anahtar oluşturma izni gerektirir.

  • Veritabanını şifrelemek için veritabanı üzerinde control izni gerektirir.