Aracılığıyla paylaş


Always Encrypted Sihirbazı'nı kullanarak sütun şifrelemeyi yapılandırma

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen Örneği

Always Encrypted Sihirbazı, seçili veritabanı sütunları için istenen Always Encrypted yapılandırmasını ayarlamanıza olanak tanıyan güçlü bir araçtır. Geçerli yapılandırmaya ve istenen hedef yapılandırmaya bağlı olarak, sihirbaz bir sütunu şifreleyebilir, şifresini çözebilir (şifrelemeyi kaldırabilir) veya yeniden şifreleyebilir (örneğin, yeni bir sütun şifreleme anahtarı veya sütun için yapılandırılmış geçerli türden farklı bir şifreleme türü kullanarak). Sihirbazın tek bir çalıştırmasında birden çok sütun yapılandırılabilir.

Sihirbaz, sütunları mevcut sütun şifreleme anahtarlarıyla şifrelemenize olanak tanır veya yeni bir sütun şifreleme anahtarı ya da hem yeni bir sütun şifreleme anahtarı hem de yeni bir sütun ana anahtarı oluşturmayı seçebilirsiniz.

Veritabanınız güvenli bir kapanımla yapılandırıldığında, verileri veritabanından dışarı taşımadan şifreleme işlemlerini yerinde çalıştırabilirsiniz. Sihirbaz, şifrelenecek sütunun şema değişikliğini engelleyen tüm bağımlılıkları kaldırır. Veritabanı motoru içindeki yerleşkeyi kullanarak her sütun için yerinde şifreleme uygular. Şifreleme tamamlandığında sihirbaz bağımlılıkları yeniden oluşturur. Güvenli kuşatmalarla Always Encrypted hakkında daha fazla bilgi için bkz. Güvenli kuşatmalarla Always Encrypted.

Veritabanınız güvenli bir kapanımla* yapılandırılmadığında, sihirbaz size güvenli bir kapanım etkinleştirme fırsatı verir. Güvenli bir kapanım etkinleştirmemeyi seçerseniz veya kapanım özellikli anahtarları kullanarak* kullanmıyorsanız, sihirbaz verileri veritabanından taşıyarak ve SQL Server Management Studio (SSMS) işlemi içinde şifreleme işlemleri gerçekleştirerek çalışır. Sihirbaz veritabanında istenen şifreleme yapılandırmasına sahip yeni bir tablo (veya tablo) oluşturur, özgün tablolardaki tüm verileri yükler, istenen şifreleme işlemlerini gerçekleştirir, verileri yeni tablolara yükler ve özgün tabloları yeni tablolarla değiştirir.

İpucu

Ortamınızda varsa güvenli kuşatmalarla Always Encrypted kullanarak yerinde şifreleme kullanmak, şifreleme işlemlerinin süresini ve güvenilirliğini önemli ölçüde azaltabilir.

Uyarı

Şifreleme işlemlerinin çalıştırılması uzun sürebilir. Bu süre boyunca veritabanınız işlem yazmak için kullanılamaz. PowerShell, daha büyük tablolarda şifreleme işlemleri için önerilen bir araçtır. Bkz. PowerShell ile Always Encrypted kullanarak sütun şifrelemeyi yapılandırma veya PowerShellile sütun şifrelemeyi yerinde yapılandırma .

İzinler

Sihirbazı kullanarak, kriptografik işlemleri gerçekleştirmek için HERHANGİ BİR SÜTUN ANAHTARI TANIMINI GÖRÜNTÜLEME ve SÜTUN ŞİFRELEME ANAHTARI TANIMINI GÖRÜNTÜLEME izinlerine sahip olmanız gerekir. Ayrıca sütun ana anahtarınızı oluşturmak, bunlara erişmek ve kullanmak için anahtar deposu izinlerine de ihtiyacınız vardır. Anahtar deposu izinleri hakkında ayrıntılı bilgi için Always Encrypted için sütun ana anahtarları oluşturma ve depolama bölümüne gidin veya anahtar deponuzla ilgili bir bölüm bulun.

Always Encrypted Sihirbazı'nı açma

Sihirbazı üç farklı düzeyde başlatabilirsiniz:

  • Veritabanı düzeyinde: Farklı tablolarda bulunan birden çok sütunu şifrelemek istiyorsanız.
  • Tablo düzeyinde: Aynı tabloda bulunan birden çok sütunu şifrelemek istiyorsanız.
  • Belirli bir sütunu şifrelemek istiyorsanız, sütun düzeyinde.
  1. SQL Server Management Studio'nun Nesne Gezgini bileşeniyle SQL Server'ınıza bağlanın.

  2. Şifrelemek için:

    1. Veritabanında farklı bir tabloda bulunan birden çok sütun, veritabanınıza sağ tıklayın, Görevler'in üzerine gelin ve Sütunları Şifrele'yi seçin.
    2. Aynı tabloda bulunan birden çok sütun, tabloya gidin, sağ tıklayın ve ardından Sütunları Şifrele'yi seçin.
    3. Tek bir sütuna gidin, sütuna sağ tıklayın ve ardından Sütunları Şifrele'yi seçin.

Sütun Seçimi sayfası

Bu sayfada, şifrelemek, yeniden şifrelemek veya şifresini çözmek istediğiniz sütunları seçer ve seçili sütunlar için hedef şifreleme yapılandırmasını tanımlarsınız.

Düz metin sütununu (şifrelenmemiş bir sütun) şifrelemek için bir şifreleme türü (Deterministic veya Randomized) ve sütun için bir şifreleme anahtarı seçin.

Şifreleme türünü değiştirmek veya zaten şifrelenmiş bir sütunun sütun şifreleme anahtarını döndürmek (değiştirmek) için istenen şifreleme türünü ve anahtarı seçin.

Sihirbazın yeni bir sütun şifreleme anahtarı kullanarak bir veya daha fazla sütunu şifrelemesini veya yeniden şifrelemesini istiyorsanız, adında (Yeni) içeren bir anahtar seçin. Sihirbaz anahtarı oluşturur.

Şu anda şifrelenmiş olan bir sütunun şifresini çözmek için şifreleme türü olarak Düz Metin'i seçin.

Uyarı

Yerinde şifreleme kullanmak istiyorsanız ve mevcut anahtarları kullanıyorsanız, (kapanım etkin) olarak işaretlenmiş kapanım özellikli anahtarları seçtiğinizden emin olun.

Uyarı

Sihirbaz, zamansal ve bellek içi tablolarda şifreleme işlemlerini desteklemez. Transact-SQL kullanarak boş zamansal veya bellek içi tablolar oluşturabilir ve uygulamanızı kullanarak veri ekleyebilirsiniz.

Ana Anahtar Yapılandırma sayfası

Önceki sayfadaki herhangi bir sütun için otomatik olarak oluşturulan bir sütun şifreleme anahtarı seçtiyseniz, bu sayfada var olan bir sütun ana anahtarını seçmeniz veya sütun şifreleme anahtarını şifreleyecek yeni bir sütun ana anahtarı yapılandırmanız gerekir.

Yeni bir sütun ana anahtarı yapılandırırken, Windows Sertifika Deposu'nda veya Azure Key Vault'ta var olan bir anahtarı seçebilir ve sihirbazın veritabanındaki anahtar için yalnızca bir meta veri nesnesi oluşturmasını sağlayabilir veya hem anahtarı hem de veritabanındaki anahtarı açıklayan meta veri nesnesini oluşturmayı seçebilirsiniz.

Yerinde şifrelemeyi kullanmak için Yeni bir sütun ana anahtarı için kapanım hesaplamalarına izin ver'i seçtiğinizden emin olun. Bu onay kutusunun seçilmesine yalnızca veritabanınız güvenli bir kapanımla yapılandırılmışsa izin verilir.

Windows Sertifika Deposu, Azure Key Vault veya diğer anahtar depolarında sütun ana anahtarlarını oluşturma ve depolama hakkında daha fazla bilgi için bkz. Always Encrypted için sütun ana anahtarları oluşturma ve depolama veya Güvenli kuşatmalarla Always Encrypted anahtarlarını yönetme.

İpucu

Sihirbaz yalnızca Windows Sertifika Deposu ve Azure Key Vault'ta anahtarlara göz atmanızı ve anahtarlar oluşturmanızı sağlar. Ayrıca hem yeni anahtarların hem de anahtarları açıklayan veritabanı meta veri nesnelerinin adlarını otomatik olarak oluşturur. Anahtarlarınızın nasıl sağlandığı konusunda daha fazla denetime ihtiyacınız varsa (ve sütun ana anahtarınızı içeren bir anahtar deposu için daha fazla seçenek) yeni sütun ana anahtarı ve yeni sütun şifreleme anahtarı iletişim kutularını kullanarak anahtarları oluşturabilir ve ardından sihirbazı çalıştırabilir ve oluşturduğunuz anahtarları seçebilirsiniz. Yeni Sütun Anahtarı İletişim Kutusu ile Sütun Anahtarlarını Sağlama veya Enklav Destekli Anahtarları Sağlama ve Yeni Sütun Şifreleme Anahtarı İletişim Kutusu ile Sütun Şifreleme Anahtarlarını Sağlama.

In-Place Şifreleme Ayarları sayfası

Veritabanınızda güvenli bir kapanım yapılandırdıysanız ve kapanım özellikli anahtarlar kullanıyorsanız, bu sayfa yerinde şifreleme için gerekli olan kapanım kanıtlama parametrelerini belirtmenize olanak tanır. Yerinde şifreleme kullanmak istemiyorsanız, uygun sütunlar için yerinde şifrelemeyi kullan seçimini kaldırarak istemci tarafı şifrelemeye devam etmek için devam edin. Sihirbazın yerinde şifreleme kullanabilmesi için bu onay kutusunu etkin bırakmanızı öneririz.

Kapanım kanıtlama hakkında daha fazla bilgi için bkz: Azure Kanıtlama kullanarak Always Encrypted için kanıtlamayı yapılandırma

Şifreleme sonrası

Parametre şifreleme bilgilerini yenilemek için tabloya erişen tüm toplu işlemler ve saklı yordamlar için plan önbelleğini temizleyin.

ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE;

Uyarı

Etkilenen sorgunun planını önbellekten kaldırmazsanız, şifrelemeden sonra sorgunun ilk yürütmesi başarısız olabilir.

Plan önbelleğini dikkatlice temizlemek için ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE veya DBCC FREEPROCCACHE kullanın, çünkü bu, geçici olarak sorgu performansında düşüşe neden olabilir. Önbelleği temizlemenin olumsuz etkisini en aza indirmek için, yalnızca etkilenen sorgular için planları seçmeli olarak kaldırabilirsiniz.

sys.parameters içinde kalıcı olan ve sütunları şifreleyerek geçersiz kılınmış olabilecek her modülün parametrelerinin (saklı yordam, işlev, görünüm, tetikleyici) meta verilerini güncelleştirmek için sp_refresh_parameter_encryption'yi çağırın.