Always Encrypted kullanarak verileri sütunlara veya sütunlardan SQL Server İçeri/Dışarı Aktarma Sihirbazı ile taşıyın

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

SQL Server İçe ve Dışa Aktarma Büyücüsü, verileri bir kaynaktan bir hedefe kopyalamanızı sağlayan bir araçtır. Bu makale, kaynak ve hedef veya her ikisi Always Encrypted ile korunan sütunlar içeren bir SQL Server veritabanı olduğunda SQL Server İçe ve İchracat Sihirbazı'nın nasıl kullanılacağını açıklar.

Geçiş senaryoları

SQL Server İçeri ve Dışarı Aktarma Sihirbazı ile, şifrelenmiş sütunlara veya şifrelenmiş sütunlardan veri geçirmek için aşağıdaki senaryoları uygulayabilirsiniz.

Geçişte düz metin verilerini şifreleme

Veri kaynağınız düz metin veri içeriyorsa ve hedefiniz şifreli sütunlar içeren bir SQL Server veritabanıysa SQL Server İçe ve Dışa Aktarma Sihirbazı'nı kullanarak kaynaktan düz metin veriyi alabilir, şifreleyebilir ve şifreli veriyi (şifreli metin) hedef veritabanındaki şifrelenmiş sütunlara kopyalayabilirsiniz. Bu göç senaryosu için, veri kaynağı SQL Server İçe ve Dışa Aktarma Sihirbazı'nın desteklediği herhangi bir veri deposu olabilir; örneğin bir dosya, SQL Server veritabanı veya başka bir veritabanı sistemindeki bir veritabanı.

SQL Server İçe ve Dışa Aktarma Sihirbazı'nın verileri şifreleyebilmesini sağlamak için, hedef veritabanı bağlantısı için Always Encrypted özelliğini etkinleştirin ve hedef veritabanı sütunlarındaki verileri koruyan anahtarlara erişiminizin olduğundan emin olun. Daha fazla bilgi için bkz. Veritabanı bağlantısı için Always Encrypted'ı etkinleştirme ve devre dışı bırakma ve geçiş sırasında verileri şifreleme veya şifre çözme izinleri.

Geçişte şifrelenmiş verilerin şifresini çözme

Eğer SQL Server veritabanında şifrelenmiş veritabanı sütunlarında depolanan verileri taşıyorsanız, SQL Server İçe ve İhracat Sihirbazı'nı verilerin şifresini çözecek ve çözülmüş (düz metin) verileri bir hedefe kopyalayacak şekilde yapılandırabilirsiniz. Hedef, SQL Server İçeri/Dışarı Aktarma Sihirbazı'nın desteklediği herhangi bir veri deposu olabilir; örneğin bir dosya, SQL Server veritabanı veya başka bir veritabanı sistemindeki bir veritabanı.

SQL Server Alma ve Verme Sihirbazı'nın verilerin şifresini çözebilmesini sağlamak için, kaynak veritabanı bağlantısı için Always Encrypted seçeneğini etkinleştirin ve kaynak veritabanı sütunlarındaki verileri koruyan anahtarlara erişiminizin olduğundan emin olun. Daha fazla bilgi için bkz. Veritabanı bağlantısı için Always Encrypted'ı etkinleştirme ve devre dışı bırakma ve geçiş sırasında verileri şifreleme veya şifre çözme izinleri.

Geçişte verileri yeniden şifreleme

Eğer kaynak SQL Server veritabanındaki şifrelenmiş sütunlardan aynı veya başka bir SQL Server veritabanındaki şifreli sütunlara veri kopyalıyorsanız, SQL Server İçe ve İhracat Sihirbazı'nı veriyi kaynaktan aldıktan sonra şifre çözmeye ve hedef veritabanındaki şifreli sütunlara eklemeden önce yeniden şifreleyecek şekilde yapılandırabilirsiniz. Bu yöntemi, hedef sütunların şeması, örneğin sütun veri türleri, şifreleme türleri ve sütun şifreleme anahtarları, kaynak sütunların şemasından farklıysa, kullanın.

SQL Server İçe ve Dışa Aktarma Sihirbazı'nın verileri şifreleyip çözebilmesini sağlamak için, hem kaynak veritabanı bağlantısı hem de hedef veritabanı bağlantısı için Always Encrypted'ı etkinleştirin ve hem kaynak hem de hedef veritabanı sütunlarındaki verileri koruyan anahtarlara erişiminizin olduğundan emin olun. Daha fazla bilgi için bkz. Veritabanı bağlantısı için Always Encrypted'ı etkinleştirme ve devre dışı bırakma ve geçiş sırasında verileri şifreleme veya şifre çözme izinleri.

Geçiş sırasında verileri şifrelenmiş tutma

Eğer kaynak SQL Server veritabanındaki şifreli sütunlardan aynı veya başka bir SQL Server veritabanındaki şifreli sütunlara veri kopyalıyorsanız ve hedef sütunlar kaynak sütunlarla tam olarak aynı şemayı kullanıyorsa, aynı veri türleri, şifreleme tipleri ve sütun şifreleme anahtarları dahil, SQL Server İçe ve Dışa Aktarma Sihirbazı'nı kaynak sütunlardan şifreli metni alıp şifreli veriyi (şifreli metin) hedef SQL Server veritabanındaki şifreli sütuna ekleyecek şekilde yapılandırabilirsiniz.

Bu senaryoda, kaynak veya hedef SQL Server veritabanına bağlanmak için SQL Server'ı destekleyen herhangi bir veri sağlayıcısını kullanın. Eğer Always Encrypted özelliğini destekleyen bir sağlayıcı kullanıyorsanız, veritabanı bağlantısı için Always Encrypted'in devre dışı olduğundan emin olun. Daha fazla bilgi için bkz. Veritabanı bağlantısı için Always Encrypted'ı etkinleştirme ve devre dışı bırakma.

Ayrıca, SQL Server İçe ve Dışa Aktarma Sihirbazı'nın hedef veritabanına bağlanmak için kullandığı veritabanı sorumlusunun (kullanıcı) ALLOW_ENCRYPTED_VALUE_MODIFICATIONS seçeneği ON olarak ayarlanmış şekilde yapılandırıldığından emin olmanız gerekir. Bu seçenek, sunucudaki kriptografik meta veri kontrollerini toplu kopyalama işlemlerinde bastırır; böylece sihirbaz, şifrelenmiş veriyi şifre çözmeden hedef veritabanına toplu olarak ekleyebilir. Daha fazla bilgi için, Always Encrypted ile korunan sütunlara şifrelenmiş verileri toplu yükleme bölümünü inceleyebilirsiniz.

Veritabanı bağlantısı için Always Encrypted'ı etkinleştirme ve devre dışı bırakma

Eğer geçiş senaryonuzda SQL Server İçe ve Dışa Aktarma Sihirbazı'nın verileri şifrelemesi veya şifresini çözmesi gerekiyorsa, kaynak SQL Server veritabanı bağlantısını, hedef SQL Server veritabanı bağlantısını veya her ikisini de Always Encrypted desteğini destekleyen bir veri sağlayıcısı kullanarak yapılandırın. Ayrıca bu bağlantılar için Always Encrypted özelliğini etkinleştirmeniz gerekir.

Sihirbazın o bağlantıdaki verileri şifrelemesine veya şifresini çözmesine ihtiyacınız yoksa, bağlantı için herhangi bir veri sağlayıcısını kullanın.

SQL Server İçeri ve Dışarı Aktarma Sihirbazı'ndaki aşağıdaki veri sağlayıcıları Always Encrypted'ı destekler.

Geçiş sırasında verileri şifreleme veya şifresini çözme izinleri

SQL Server kaynak veya hedef veritabanında depolanan verileri şifrelemek veya şifresini çözmek için, kaynak veritabanında VIEW ANY COLUMN ENCRYPTION KEY DEFINITION ve VIEW ANY COLUMN MASTER KEY DEFINITION izinlerine ihtiyacınız vardır. Ayrıca sütun ana anahtarınıza erişmek ve bunları kullanmak için anahtar deposu izinlerine de ihtiyacınız vardır. Anahtar yönetim işlemleri için gereken anahtar deposu izinleri hakkında ayrıntılı bilgi için, Always Encrypted için sütun ana anahtarları oluştur ve sakla bölümüne bakın ve anahtar deponuzla ilgili bölümü bulun.