Transparent Data Encryption (TDE) ve Değişiklik Yönetimi
I’m a passionate software engineer specializing in SQL change management, database security, and DevOps automation. With over 17 years of experience in the banking sector, I focus on building tools and processes that make database deployments safer, more auditable, and automated.
As the creator of SQL Change Guard, I develop solutions that use risk scoring and AI-powered code analysis to detect dangerous SQL scripts before they reach production. I’m dedicated to helping teams minimize downtime and data loss through smarter change governance.
When I’m not coding, I enjoy sharing insights about secure development practices, WPF desktop applications, and integrating modern CI/CD pipelines.
Feel free to connect or reach out at info@sqlchangeguard.com
Veritabanı şifrelemesi güvenlik altyapısının önemli bir parçası. Ama TDE yapılandırması değiştiğinde ne olduğunu kaç kişi takip ediyor?
TDE Nedir, Neden Önemli? Transparent Data Encryption, veritabanı dosyalarını fiziksel seviyede şifreler. Disk üzerindeki veri, log dosyaları ve backup'lar şifreli olduğu için fiziksel erişim yeterli olsa bile veri okunamaz. KVKK, BDDK ve ISO 27001 kapsamında hassas veri barındıran sistemlerde şifreleme artık neredeyse zorunlu bir gereksinim.
TDE Değişikliklerinin Riski TDE yapılandırması yanlış değiştirildiğinde sonuçlar ciddi olabilir. Şifreleme anahtarı yanlış yönetilirse veri kalıcı olarak erişilemez hale gelebilir. Şifreleme anahtarı olmadan şifreli bir veritabanını açmak mümkün değil. TDE beklenmedik şekilde devre dışı bırakılırsa veri şifresiz diske yazılmaya başlar. Bu güvenlik ihlali olarak değerlendirilebilir. Sertifika yenileme yanlış yapılırsa backup'lar açılamaz hale gelebilir.
TDE Durumunu İzlemek sql-- Veritabanlarının şifreleme durumunu kontrol et SELECT d.name AS VeritabaniAdi, d.is_encrypted AS Sifreli, de.encryption_state_desc AS SifrelemeDurumu, de.encryptor_type AS SifreleyiciTipi, de.percent_complete AS TamamlanmaYuzdesi FROM sys.databases d LEFT JOIN sys.dm_database_encryption_keys de ON d.database_id = de.database_id ORDER BY d.name; sql-- Şifreleme sertifikalarını listele SELECT name AS SertifikaAdi, expiry_date AS SonKullanmaTarihi, pvt_key_last_backup_date AS SonAnahtarYedekleme FROM sys.certificates WHERE name NOT LIKE '##%' ORDER BY expiry_date; İkinci sorgu özellikle kritik. Sertifika son kullanma tarihi yaklaşıyorsa ve yenileme planı yoksa büyük bir risk var demektir.
TDE Değişikliklerini Değişiklik Yönetimine Dahil Etmek TDE ile ilgili her operasyon değişiklik yönetim sürecine tabi olmalı:
Şifreleme etkinleştirme/devre dışı bırakma Sertifika yenileme Şifreleme anahtarı rotasyonu Backup şifreleme yapılandırması
Bu operasyonların tamamı hem teknik risk hem de uyum açısından kritik. Onay süreci olmadan yapılmamalı.
Anahtar Yönetimi TDE'nin en kritik parçası anahtar yönetimi. Sertifikalar güvenli bir yerde saklanmalı ve düzenli olarak yedeklenmeli. sql-- Sertifikayı yedekle BACKUP CERTIFICATE TDE_Certificate TO FILE = 'C:\Backup\TDE_Certificate.cer' WITH PRIVATE KEY ( FILE = 'C:\Backup\TDE_Certificate_Key.pvk', ENCRYPTION BY PASSWORD = 'GucluParola123!' ); Bu yedek production sunucusundan farklı bir yerde saklanmalı. Sunucu kaybolursa yedek de kaybolursa veri kurtarılamaz.
Sonuç TDE güvenliği artırır ama yanlış yönetildiğinde veri kaybına yol açabilir. Şifreleme yapılandırması değişiklik yönetiminin en kritik alanlarından biri. Detaylı bilgi için: sqlchangeguard.com
