Siber Güvenlik

KVKK Teknik Uyumda Yazılımın Rolü: Loglama, Şifreleme ve Veri Silme Akışları

29 Oct 2026
9 dakika okuma
Ininia Teknoloji
2

KVKK (Kişisel Verilerin Korunması Kanunu) için yazılımda hukukçuların bahsettiği "teknik tedbirler", kişisel verinin tüm yaşam döngüsü boyunca korunmasını sağlayan somut ve uygulanabilir yazılımsal mekanizmalardır. Bu tedbirler, verinin toplanmasından işlenmesine, saklanmasından silinmesine kadar her aşamada güvenlik ve hesap verebilirlik sağlamayı hedefler. Temel olarak, yazılımda erişimlerin ve işlemlerin şeffaf bir şekilde kaydedilmesi (loglama), verinin yetkisiz erişime karşı okunamaz hale getirilmesi (şifreleme) ve mevzuata uygun şekilde geri döndürülemez biçimde yok edilmesi (veri silme akışları) kritik öneme sahiptir. Bu yazıda, bu üç temel bileşenin yazılım sistemlerine nasıl entegre edileceği ve uygulama esasları teknik bir bakış açısıyla ele alınmaktadır.

Loglama: Kim, Ne Zaman, Nerede, Neden Yaptı?

Kişisel verilere yönelik her türlü erişim ve işlem, KVKK kapsamında denetlenebilir olmalıdır. Bu denetlenebilirliği sağlamanın temel yolu, detaylı ve güvenilir loglama mekanizmaları kurmaktır. Loglama, bir olay meydana geldiğinde "kimin, neyi, ne zaman, nereden ve nasıl" yaptığını gösteren bir kayıt zinciri oluşturur. Bu kayıtlar, olası veri ihlallerinin tespiti, kök neden analizi ve kanıt toplama süreçleri için vazgeçilmezdir.

Yazılım sistemlerinizde aşağıdaki olayların mutlaka loglanması gerekmektedir:

  • Kişisel verilere erişim denemeleri (başarılı ve başarısız).
  • Kişisel veriler üzerinde yapılan değişiklikler (ekleme, güncelleme, silme).
  • Kişisel verilerin dışa aktarılması veya kopyalanması.
  • Kullanıcı rıza değişiklikleri (onay verme, geri çekme).
  • Sistem yöneticisi veya yetkili kullanıcıların kritik sistem ayarları üzerindeki işlemleri.
  • KVKK kapsamında kritik görülen diğer tüm operasyonel adımlar.

Logların güvenliği de en az loglama kadar önemlidir. Loglar, yetkisiz erişime, değişikliğe veya silinmeye karşı korunmalıdır. Merkezi bir log yönetim sistemi kullanmak, logların bütünlüğünü ve erişilebilirliğini artırır. Logların belirli bir süre saklanması ve bu süre sonunda güvenli bir şekilde imha edilmesi de KVKK yükümlülükleri arasındadır.

Logların içeriğinde, eğer zorunlu değilse, doğrudan kişisel veri bulundurmaktan kaçınmak, log sisteminin kendisini de bir kişisel veri işleme alanı olmaktan çıkararak güvenlik yükünü azaltır. Logların anonimleştirilmesi veya pseudonimleştirilmesi, bu konuda atılabilecek önemli adımlardandır. Sınav güvenliği gibi yüksek hassasiyetli sistemlerde, bu tür loglama yaklaşımları veri güvenliğini artırır ve denetlenebilirliği güçlendirir.

Loglama Tuzakları ve Doğru Yaklaşımlar

KVKK uyumlu loglama, yalnızca log üretmekten ibaret değildir; aynı zamanda bu logların bütünlüğünü, erişilebilirliğini ve denetlenebilirliğini sağlamayı gerektirir. Yetersiz veya güvensiz loglama, ihlal anında delil yetersizliğine yol açarak idari para cezaları riskini artırır.

Birçok yazılım ekibi, loglamayı basit bir dosya yazma işlemi olarak görür ve bu durum ciddi güvenlik zafiyetlerine yol açabilir. Aşağıdaki tablo, yaygın loglama hatalarını ve doğru yaklaşımları özetlemektedir:

Yaygın Hata KVKK Uyumlu Yaklaşım Teknik Faydası
Uygulama sunucusunda yerel dosyalara loglama Merkezi, güvenli bir log toplama ve yönetim sistemine (ELK Stack, Splunk vb.) log gönderme Log bütünlüğü, tek noktadan izleme, hızlı arama, saldırganın logları silmesini engelleme
Şifrelenmemiş veya yetkisiz erişilebilir loglar Logları depolarken şifreleme (at rest) ve log iletiminde güvenli protokoller (TLS) kullanma Logların gizliliğini ve bütünlüğünü koruma, yetkisiz okumayı engelleme
Çok fazla veya çok az detaylı loglama Sadece KVKK kapsamında kritik olan olayları ve minimum gerekli bilgiyi loglama Performans yükünü azaltma, log analizini kolaylaştırma, gereksiz kişisel veri toplama riskini düşürme
Logları süresiz saklama veya süresi dolunca silmeme Belirli bir saklama süresi tanımlama ve bu süre sonunda otomatik, güvenli silme akışları uygulama Veri minimizasyonu ilkesine uyum, depolama maliyetlerini optimize etme

Şifreleme: Veriyi Hem Hareket Halinde Hem Saklıyken Koruma

Kişisel verilerin yetkisiz kişilerin eline geçmesi durumunda dahi anlaşılamaz olmasını sağlamak için şifreleme kritik bir tekniktir. KVKK, verilerin güvenliğinin sağlanmasında şifrelemeyi önemli bir teknik tedbir olarak kabul eder. Şifreleme, temel olarak iki ana senaryoda uygulanmalıdır: verinin depolandığı durumda (data at rest) ve verinin ağ üzerinde iletilirken (data in transit).

Depolanan Verinin Şifrelenmesi (Data At Rest)

Veritabanlarında, dosya sistemlerinde veya bulut depolama alanlarında duran kişisel veriler şifrelenmelidir. Bu, sunucu veya depolama birimi çalınsa, kopyalansa veya yetkisiz erişim sağlansa bile verinin okunamaz kalmasını sağlar. Uygulama katmanında şifreleme, veritabanı katmanında şifreleme veya disk şifrelemesi gibi farklı yaklaşımlar mevcuttur:

  • Uygulama Katmanı Şifrelemesi: Yazılımınızın doğrudan hassas veriyi şifreleyip çözmesi anlamına gelir. Bu, veritabanı yöneticilerinin bile şifrelenmiş veriyi görmesini engeller ve en yüksek düzeyde kontrol sağlar. Ancak, anahtar yönetimi ve performans üzerinde ek yük getirir. Özellikle belirli kolonlardaki (örneğin TC Kimlik Numarası, sağlık bilgileri) hassas veriler için tercih edilebilir.
  • Veritabanı Katmanı Şifrelemesi: Çoğu modern veritabanı sistemi (PostgreSQL, MySQL, SQL Server) kendi içinde şifreleme yetenekleri sunar (Transparent Data Encryption - TDE veya kolon şifrelemesi). Bu yöntem, uygulamadan bağımsız olarak veriyi korur ancak veritabanı yöneticileri genellikle şifre çözme anahtarlarına erişebilir.
  • Disk Şifrelemesi: İşletim sistemi veya donanım seviyesinde tüm diski şifreler (BitLocker, dm-crypt). Bu, fiziksel hırsızlık durumunda koruma sağlar ancak işletim sistemi çalışırken verilere erişimi engellemez. Genellikle diğer şifreleme yöntemleriyle birlikte kullanılır.

Şifreleme anahtarlarının güvenli yönetimi, şifrelemenin kendisi kadar önemlidir. Anahtarlar, donanım güvenlik modülleri (HSM) veya anahtar yönetim sistemleri (KMS) kullanılarak saklanmalı ve düzenli olarak döndürülmelidir. Kritik altyapı siber güvenliğinde kullanılan sistemler, bu tür anahtar yönetimine özel önem verir.

İletilen Verinin Şifrelenmesi (Data In Transit)

Yazılım bileşenleri arasında veya dış sistemlerle iletişim kurulurken (API çağrıları, web istekleri, veritabanı bağlantıları), kişisel verilerin ağ üzerinde güvenli bir şekilde iletilmesi gerekir. Bunun için TLS/SSL protokolleri en yaygın ve etkili yöntemdir. Tüm web tabanlı uygulamalar HTTPS kullanmalı, API entegrasyonları (örneğin GİB e-Fatura API entegrasyonu) ve veritabanı bağlantıları TLS ile şifrelenmiş kanallar üzerinden yapılmalıdır.

Eski ve güvensiz protokollerden (HTTP, FTP, Telnet) kesinlikle kaçınılmalıdır. Bu, Man-in-the-Middle (MITM) saldırılarına karşı veriyi korur.

Veri Silme Akışları: Otomatik ve Denetlenebilir İmha

KVKK kapsamında, kişisel verilerin işlenmesini gerektiren amacın ortadan kalkması veya ilgili kişinin talebi üzerine verilerin silinmesi, yok edilmesi veya anonim hale getirilmesi zorunludur. Yazılım sistemleri, bu süreci otomatik, güvenli ve denetlenebilir bir şekilde yürütmek üzere tasarlanmalıdır. Veri silme akışlarının karmaşıklığı, sistemin dağıtık yapısına, veri yedekleme stratejilerine ve referans bütünlüğü gereksinimlerine göre artar.

Adım Adım Güvenli Veri Silme Akışları Tasarımı

  1. Veri Saklama Sürelerini Tanımlama: Her bir kişisel veri kategorisi için yasal ve operasyonel saklama süreleri belirlenmelidir. Bu süreler, veri toplama aşamasında ilgili kişiye açıkça bildirilmelidir.
  2. Tüm Veri Depolarını Belirleme: Kişisel verilerin depolandığı tüm yerler (ana veritabanları, raporlama veritabanları, dosya sistemleri, loglar, önbellekler, yedekler, felaket kurtarma sistemleri, test ortamları, dış entegrasyonlar) eksiksiz olarak tespit edilmelidir.
  3. Otomatik Silme Mekanizmaları Geliştirme: Belirlenen saklama süreleri dolduğunda verileri otomatik olarak silen veya anonimleştiren zamanlanmış görevler (cron job, background process) veya veri yaşam döngüsü politikaları (bulut depolama için S3 lifecycle rules) oluşturulmalıdır.
  4. Soft Deletion (Mantıksal Silme) ve Hard Deletion (Fiziksel Silme) Kararı:
    • Soft Deletion: Veriyi veritabanından fiziksel olarak silmek yerine, bir 'is_deleted' bayrağı ile işaretlemek anlamına gelir. Bu, veri bütünlüğünü korumak ve bazı durumlarda geçmiş kayıtları denetim amacıyla saklamak için kullanılabilir. Ancak, KVKK uyumu için bu verilerin belirli bir süre sonra fiziksel olarak silinmesi veya anonimleştirilmesi zorunludur.
    • Hard Deletion: Verinin depolandığı yerden geri döndürülemez bir şekilde fiziksel olarak kaldırılmasıdır. KVKK'nın "silme" veya "yok etme" gerekliliklerini karşılamak için bu yöntem esastır. Veritabanında satır silme, dosya sisteminde güvenli silme algoritmaları (örneğin üzerine yazma) uygulanmalıdır.
  5. Dağıtık Sistemlerde Silme Propagasyonu: Eğer kişisel veri birden fazla mikroservis veya dış sistemde çoğaltılmışsa, silme işleminin tüm bu sistemlere yayılması (event-driven deletion, mesaj kuyrukları ile) sağlanmalıdır. Bu, açık bankacılık gibi entegrasyonların olduğu karmaşık yapılar için özellikle önemlidir.
  6. Yedekleme Sistemlerinde Silme Yönetimi: Yedekler, silinen verinin tekrar ortaya çıkmasına neden olabilecek bir tuzaktır. Yedekleme politikaları, silinen verilerin yedeklerden de belirli bir süre sonra güvenli bir şekilde silinmesini içermelidir veya yedeklerin yaşam döngüsü kişisel veri içeren yedeklerin imhasını içermelidir.

Bu konuda bir yazılım projesi mi planlıyorsunuz?

Projenizi birlikte analiz edip teknik yol haritasını çıkarabiliriz. Ücretsiz keşif görüşmesi için hemen yazın.

İlgili Hizmetlerimiz

Ininia Teknoloji

İstanbul Teknik Üniversitesi ARI Teknokent'te kurulu Ininia Teknoloji, 12+ yıllık deneyimle AR/VR, yapay zeka ve mobil uygulama alanlarında yenilikçi çözümler sunmaktadır.

Projeniz için profesyonel destek mi arıyorsunuz?

12+ yıllık deneyimimizle dijital dönüşümünüzü hızlandıralım.

Ücretsiz Görüşme Talep Et