Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
DACPAC olarak da bilinen veri katmanı uygulaması (DAC) paketi, tabloların içindeki tablolar ve sütunlar da dahil olmak üzere tüm SQL Server nesnelerini tanımlayan taşınabilir bir SQL Server veritabanı dağıtımı birimidir. Veritabanına bir DACPAC yayımladığınızda (veritabanını DACPAC kullanarak yükselttiğinizde), hedef veritabanının şeması DACPAC'deki şemayla eşleşecek şekilde güncelleştirilir. SQL Server Management Studio, PowerShell veya sqlpackage'dakiVeri Katmanı Uygulama Yükseltme Sihirbazı'nı kullanarak bir DACPAC yayımlayabilirsiniz.
Bu makalede, DACPAC veya hedef veritabanı Always Encrypted ile korunan sütunlar içerdiğinde veritabanını yükseltmeye yönelik özel noktalar ele alınmaktadır. DACPAC'deki bir sütunun şifreleme düzeni hedef veritabanındaki mevcut bir sütunun şifreleme düzeninden farklıysa, DACPAC'nin yayımlanması sütunda depolanan verilerin şifrelenmesine, şifresinin çözülmesine veya yeniden şifrelenmesine neden olur. Ayrıntılar için aşağıdaki tabloya bakın.
| Condition | Eylem |
|---|---|
| DACPAC'teki sütun şifrelenmiş, ancak veritabanında şifrelenmemiş. | Sütundaki veriler şifrelenir. |
| Sütun, DACPAC dosyasında şifrelenmemiştir ve veritabanında şifrelenmiştir. | Sütundaki verilerin şifresi çözülür (sütun için şifreleme kaldırılır). |
| Sütun hem DACPAC'de hem de veritabanında şifrelenir, ancak DACPAC'deki sütun veritabanındaki ilgili sütundan farklı bir şifreleme türü veya farklı bir sütun şifreleme anahtarı kullanır. | Sütundaki verilerin şifresi çözülür ve ardından DACPAC'deki şifreleme yapılandırmasıyla eşleşecek şekilde yeniden şifrelenir. |
DAC paketinin dağıtılması, always encrypted için sütun ana anahtarları veya sütun şifreleme anahtarları için meta veri nesnelerinin oluşturulmasına veya kaldırılmasına da neden olabilir.
Performansla ilgili dikkat edilmesi gerekenler
Şifreleme işlemlerini gerçekleştirmek için, DACPAC dağıtmak için kullandığınız bir aracın verileri veritabanından taşıması gerekir. Araç, veritabanında istenen şifreleme yapılandırmasına sahip yeni bir tablo (veya tablolar) 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. Şifreleme işlemlerinin çalıştırılması uzun sürebilir. Bu süre boyunca veritabanınız işlem yazmak için kullanılamaz.
Uyarı
SQL Server 2019 (15.x) kullanıyorsanız ve SQL Server örneğiniz güvenli bir kapanımla yapılandırılmışsa, verileri veritabanından dışarı taşımadan şifreleme işlemlerini yerinde çalıştırabilirsiniz. See Always Encrypted ile güvenli bölgeler kullanarak sütun şifrelemeyi yerinde yapılandırma. DACPAC dağıtımları için yerinde şifreleme kullanılamaz.
Always Encrypted ayarlandıysa DAC paketi yayımlama izinleri
DACPAC'de veya hedef veritabanında Always Encrypted ayarlandıysa DAC paketini yayımlamak için, DACPAC'deki şema ile hedef veritabanı şeması arasındaki farklara bağlı olarak aşağıdaki izinlerin bir kısmına veya tümüne ihtiyacınız olabilir.
ALTER ANY COLUMN MASTER KEY, ALTER ANY COLUMN ENCRYPTION KEY, VIEW ANY COLUMN MASTER KEY tanımı, VIEW ANY COLUMN ENCRYPTION KEY tanımı
Yükseltme işlemi bir veri şifreleme işlemi tetikliyorsa, sütun ana anahtarınıza erişmek ve bunları 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 anahtarları oluşturma ve depolama bölümünü inceleyin ve anahtar deponuzla ilgili bir bölümü bulun.
İlgili içerik
- Her Zaman Şifreli
- Always Encrypted için anahtar yönetimine genel bakış
- Always Encrypted kullanarak uygulama geliştirme
- SQL Server Management Studio ile Always Encrypted kullanarak sütunları sorgulama
- SQL Server Management Studio kullanarak Always Encrypted'ı yapılandırma
- Always Encrypted Sihirbazı'nı kullanarak sütun şifrelemeyi yapılandırma
- PowerShell ile Always Encrypted kullanarak sütun şifrelemeyi yapılandırma