Gizlilik silme ile denetim ihtiyaçları: pratik uzlaşma kalıpları
Gizlilik silme istekleri ile denetim ihtiyaçları, anonimleştirme, tombstone kayıtları ve kısıtlı geçmiş görünümleri gibi pratik yaklaşımlarla operasyonları bozmadan dengelenebilir.

Neden silme talepleri denetim ve raporlama ile çakışır
Bir kişinin verilerinin silinmesini isteme hakkı gerçekten vardır. Aynı zamanda ekiplerin güvenilir kayıtlara sahip olma için gerçek nedenleri vardır. Çatışma, “her şeyi sil” isteği günlük işler (iade, sahtecilik kontrolleri, vergi denetimleri, chargebackler ve destek takibi gibi) ile çakıştığında ortaya çıkar.
Denetim ve raporlama, geçmişin değişmemesi fikrine dayanır. Finans, toplamların geçen ayın kapanışıyla eşleşmesi gerektiğini ister. Güvenlik, bir olay sırasında ne olduğunu anlamalıdır. Operasyonlar, bir siparişin neden iptal edildiğini veya neden erişim verildiğini açıklamalıdır. Bir silme talebi ana alanları kaldırır veya değiştirirse bu hikâyeler bozulabilir ve raporlar daha önce onaylananla eşleşmeyi durdurabilir.
Bu çatışma genellikle küçük, dağınık yerlerde görülür:
- Bir destek temsilcisi bir ticket dizisini görür ama müşteri kimliği yoktur, bu yüzden onay geçmişini doğrulayamaz.
- Bir finans raporu doğru toplam verir, ama bir fatura artık var olmayan bir müşteri kaydına referans veriyorsa denetçiler işaretler.
- Bir güvenlik ekibi loglarda “User deleted” görür ama sistemler arası olayları bağlayamaz; neye erişildiğini doğrulayamaz.
“Yeterince iyi” nadiren “her şeyi sonsuza dek tut” veya “her izi sil” demektir. Pratik hedef, artık ihtiyaç duymadığınız kişisel verileri silmek veya kimliksizleştirmek, aynı zamanda yasal yükümlülükler ve sistem bütünlüğü için savunulabilir, minimal bir kayıt tutmaktır. Püf noktası, kanıtlamanız gereken şeyi (bir olayın gerçekleştiği, bir ödemenin yapıldığı, bir politikanın kabul edildiği) kişiyi tanımlayan şeyden (isim, e‑posta, telefon, adres, cihaz tanımlayıcıları) ayırmaktır.
Bazı sorular çıtayı belirlemeye yardımcı olur:
- Hangi veriler kanunen saklanmak zorunda (vergi, muhasebe, istihdam) ve ne kadar süre?
- Hangi veriler güvenlik için saklanmalı (sahtecilik, kötüye kullanım, soruşturmalar) ve ne kadar süre?
- Hangi veriler yalnızca kimliksizleştirilmiş biçimde tutulabilir?
- Saklı geçmişe kim erişebilir ve hangi onayla?
Bu sadece ürüne ait bir karar değildir. Hukuk saklama ve silme kurallarını belirler. Güvenlik hangi logların gerektiğini ve kimlerin görebileceğini tanımlar. Operasyon ve finans neyin çalışır durumda kalması gerektiğini belirler. Ürün ve mühendislik, boşluk yaratmadan bunu nasıl uygulayacağını kararlaştırır.
Bir deseni seçmeden önce ana terimler
Ekipler genellikle farklı veri türlerini ve farklı “geçmiş” türlerini karıştırır. Kelimeleri baştan doğru koymak, uyumlu görünüp raporlamayı, desteği veya finansı bozan bir süreçten kaçındırır.
Kişisel veri, bir kişiyi doğrudan veya dolaylı olarak tanımlayabilen her şeydir. Bu, isim, e‑posta, telefon, adres gibi açık alanların yanı sıra cihaz kimlikleri, IP adresleri ve bir kişiden bahseden serbest metin notlarını içerir. Eşsiz müşteri kimlikleri bile bir kişiye geri eşlenebiliyorsa kişisel veri sayılabilir.
İş kayıtları, operasyonel veya yasal nedenlerle tutmanız gereken fatura, ödeme onayı, sevkiyat kaydı veya sözleşme meta verisi gibi belgelerdir. Bu kayıtlar genellikle kişisel veri içerir; bu yüzden “faturayı tut” genelde “faturayı tut ama kişiyi tanımlayan alanları kaldır veya değiştir” anlamına gelir.
Silme ile ilgili yaygın terimler:
- Hard delete: satır veritabanından kaldırılır ve artık erişilebilir değildir.
- Soft delete: satır kalır fakat silinmiş olarak işaretlenir ve çoğu ekranda gizlenir.
- Pseudonymization: tanımlayıcılar yer tutucularla değiştirilir, ancak bir anahtar veya eşleme ile yeniden tanımlanabilir.
- Anonymization: tanımlayıcılar yeniden kimliklendirme makul ölçüde mümkün olmayacak şekilde kaldırılır.
Denetim logları, etkinlik geçmişi ve analitik tablolar da farklıdır.
- Denetim logları “kim neyi, ne zaman değiştirdi” sorusuna yanıt verir ve genellikle sadece ekleme şeklindedir.
- Etkinlik geçmişi kullanıcıya yönelik zaman çizelgesidir (ticket güncellendi, e‑posta gönderildi, durum değişti).
- Analitik tablolar toplulaştırılmış raporlama içindir ve nadiren doğrudan tanımlayıcılar gerektirir.
Saklama pencereleri, verileri tutma süre limitlerinizdir. Hukuki bekletme (legal hold) soruşturma, uyuşmazlık veya düzenleyici ihtiyaç nedeniyle silmeyi durduran bir istisnadır.
Basit bir karar testi: silmeden sonra ne kanıtlanmak zorunda (ödemeler, onaylar, erişimler) ve hangileri bu kanıtı bozmadan kaldırılabilir veya genelleştirilebilir?
Desen 1: Dikkatli yapılan anonimleştirme ve pseudonimleştirme
Bazen bir kaydı tamamen silemezsiniz çünkü operasyonları bozarsınız. Vergi için faturaların tutulması gerekebilir. Kalite incelemeleri için destek ticketları gerekebilir. Olay müdahalesi için güvenlik olayları gerekebilir. Bu durumlarda kişisel verilerin tüm kaydı silmek yerine yerini değiştirmek daha güvenli olabilir.
Anonimleştirme, makul şekilde kişiye geri dönmeyi imkânsız kılar. Pseudonimleştirme ise ekstra veri (eşleme tablosu gibi) ile yeniden kimliklenmeyi mümkün bırakır. Birçok ekip için pseudonimleştirme pratik orta yol olsa da bu, bir yeniden tanımlama yolu tuttuğu için hassas olarak ele alınmalıdır.
Önce doğrudan tanımlayıcı alanlarla başlayın, sonra kimliği “sızdıran” içerik alanlarını ele alın.
Önce neyi anonimleştirmeli
Öncelik doğrudan tanımlayıcılarda olmalıdır (isimler, e‑postalar, telefon numaraları, adresler) ve yaygın dolaylı tanımlayıcılar (cihaz kimlikleri, reklam kimlikleri, IP adresleri, kesin konum). Ardından en zor kategori olan serbest metni ele alın.
Serbest metin birçok silme planının başarısız olduğu yerdir. Yapılandırılmış alanları boşaltsanız bile bir destek notu hâlâ “ACME’den John +1...” diyebilir. Serbest metni tutacaksanız redaksiyon kuralları uygulayın veya daha kısa saklama süreli ayrı bir depoya taşıyın. Ekler ve resimler de aynı dikkat gerektirir: yüzler, kimlikler ve imzalar genellikle planlanmayan yerlere düşer.
Kimlik olmadan eşsizliği korumak
Raporlama ve benzersizleştirme için istikrar gerekir: “bu önceki müşteriyle aynı mı?” bilmek istersiniz ama kim olduğunu bilmeden. Yaygın seçenekler gizli bir salt ile hashleme, tokenizasyon (rastgele tokenler) veya eşleme tablosudur.
Eğer bir eşleme tablosu tutuyorsanız, bunu yüksek riskli bir varlık gibi ele alın. Erişimi sınırlandırın, her erişimi loglayın ve yeniden kimliklendirme için yetkiyi bölmeyi düşünün, böylece yeniden kimliklendirme ancak açık onayla mümkün olur. Aksi halde desen “zaten her şeyi görebiliyoruz”ya döner ve amaca hizmet etmez.
Somut bir örnek: bir sipariş kaydını tutun, ama customer_name ve email alanlarını bir token ile değiştirin. Vergi raporlaması için ülkeyi tutun ve yinelenen kontrol için orijinal e‑postanın saltlı bir hash'ini saklayın.
Ana test pratik olmalıdır: değişiklikten sonra normal bir operatör hâlâ işini (finans toplamları, ticket sayımları, dolandırıcılık oranları) yapabiliyor mu, ama bir kişiyi tanımlayamıyor mu?
Desen 2: Tam kayıt yerine tombstone (mezar taşı) kayıtlar
Tombstone kaydı, diğer verilerin ona referans vermeye devam edebilmesi için özellikle boşaltılmış bir sürüm bırakır. Bu, referans hatalarını önlerken kişisel veriyi kaldırır.
Bir müşteriyi hard‑delete yaparsanız, ona referans veren faturalar, ticketlar, mesajlar ve loglar raporlarda veya uygulamalarda hata verebilir. Tombstone ilişkileri korur, böylece toplamlar hâlâ tutar, ticketlar açık kalır ve denetim izi bir şeyin var olduğunu gösterir fakat kimin olduğu ortaya çıkmaz.
Bir tombstone genellikle ne içerir
İyi bir tombstone minimaldir: sistemlerin çalışması ve silmenin gerçekleştiğini kanıtlamak için yeterli, fakat kimliği yeniden belirleyecek kadar bilgi içermez. Pratikte bu genellikle bir silinmiş durumu, silinme zaman damgası (bazen onaylayan kişi), bir sebep kodu ve bütünlük için gerekli içsel kimliği içerir. İçermemesi gerekenler ise isimler, e‑postalar, telefonlar, adresler, mesaj gövdeleri, ekler veya serbest metin notlarıdır.
Yabancı anahtarlar, faturalar, ticketlar ve mesajları ele almak
Çoğu sistem birincil anahtarları ve yabancı anahtarları korur fakat kişisel alanları temizler veya null yapar. Faturalar aynı customer_id'ye referans verebilirken, UI isim yerine "Silinmiş müşteri" gibi bir şey gösterebilir.
Ticketlar ve mesajlar ekstra özen ister çünkü kişisel veriler genellikle içerikte görünür. Güvenli bir yaklaşım ilişkisel gösterimleri tutup raporlar ve joinlerin çalışmasına izin vermek, sonra içerik alanlarını (mesaj metni, ekler) redakte etmek veya silmektir. Eğer uyum için bazı detaylara gerçekten ihtiyaç varsa, bunları daha sıkı erişim kontrolleriyle ayrı tutun.
Tombstone'ların kabul edilemeyeceği durumlar
Kayıt kendisi doğası gereği hassas veya sıkı düzenlemeye tabi olduğunda tombstone uygun değildir; örneğin sağlık bilgileri, devlet kimlikleri, biyometrik veriler veya kesin konum geçmişi. Bu durumlarda tam silme ve bunun yerine kimlik içermeyen ayrı bir denetim olayı (ör. "kayıt X zamanında silindi" gibi) gerekebilir.
Denetçilere tombstone'ları belgeleme
Denetçiler genellikle kontrolün kanıtını ister, kişisel veriyi değil. Ne silindiğini, neyin kaldığını ve nedenini belgeleyin. Silinmiş kayıtları kimlerin görebileceği, raporlarda nasıl göründükleri ve yeniden kimliklendirmeyi nasıl engellediğiniz (ör. serbest metin "sebep" notlarını yasaklamak ve yerine sebep kodları kullanmak) konusunda net olun.
Desen 3: Kısıtlı geçmiş görünümleri ve redaksiyon
Bazen kişisel veriye sonsuza dek ihtiyacınız yoktur. Bir eylemin gerçekleştiğine dair kanıta ihtiyacınız vardır. Bu desen, denetim kanıtını kullanım kolaylığı görünümlerinden ayırır.
Pratik bir ayrım, "fatura onaylandı" veya "iadeye karar verildi" gibi olayları tutan bir denetim kaydı ile kullanıcıya gösterilen geçmişin kimliği ve detayları içermesidir. Bir silme talebinden sonra denetim kaydı kalabilir, fakat geçmişte gösterilen kişisel alanlar role göre redakte edilebilir veya gizlenebilir.
Rol‑temelli erişim: kim neyi görebilir
Hassas geçmişi ortak bir koridorda değil, kontrollü bir odada ele alın. Erişimi gerçek ihtiyaca göre belirleyin. Destek, ticket durumu ve zaman damgalarına ihtiyaç duyabilir, finans işlem kimliklerine ihtiyaç duyabilir, ve hiçbirinin tam profile ihtiyacı yoktur.
Küçük bir kural seti genellikle yeterlidir: çoğu personel için varsayılan görünüm redakte edilmiş olsun; küçük bir gizlilik veya güvenlik rolü daha fazlasını görebilsin ama sadece gerekçeyle; mühendisler teknik alanları (istek kimlikleri, hata kodları) görsün, kullanıcı metinlerini değil; ve "admin" otomatik olarak "her şeyi görebilir" anlamına gelmesin.
Dağınık veriler için redaksiyon kuralları
Yapılandırılmış alanlar kolayca boşaltılabilir. Serbest metin ve dosyalar gizlilik sızıntısının olduğu yerlerdir. Serbest metin için açık kurallar yazın (e‑postaları, telefonları, adresleri kaldır), ekler için politika belirleyin (silme veya sadece görünmez bir hash ile dosya türü/ boyutu saklama), dahili notlar ve arama için kurallar koyun. Arama sıkça bir sızıntıdır: biri silinmiş bir e‑posta ile arama yapabiliyorsa, arayüzde gizlenseniz bile sızıntı devam eder.
Soruşturmalar sırasında zaman sınırlı erişim yardım eder. Birisi açığa çıkarılmış geçmişe erişim gerektiğinde, otomatik olarak süresi dolan bir erişim verin, bir gerekçe kodu isteyin ve bunu kaydedin.
Ayrıca loglara erişimi ayrı bir denetim etkinliği olarak kaydedin: kim görüntüledi, hangi kayıt, ne gösterildi, ne zaman ve neden gibi bilgileri saklayın.
Bir gerçeklik kontrolü: bir destek temsilcisi eski bir nottan silinmiş bir e‑postayı kopyala‑yapıştır yapabiliyorsa, sizin "silmeniz" kozmetiktir.
Adım adım: Denetimi koruyan bir silme iş akışı tasarlamak
İyi bir iş akışı tek bir büyük "sil" butonundan çok, açık seçimler yapmak ve sonra bunları kanıtlayabilmekle ilgilidir.
Önce kişisel verinin gerçekten nerede bulunduğunu haritalayın. Genellikle sadece birkaç veritabanı tablosu değildir. Loglarda, analitik etkinliklerinde, exportlarda, eklerde ve yedeklerde de bulunur.
Sonra veri türüne göre sonuçları tanımlayın. Bazı alanlar silinmek zorunda. Bazıları anonimleştirilebilir. Bazıları yasal veya finansal nedenlerle tutulabilir ama minimize edilip kilitlenmelidir.
Bir dizin birçok üründe tutarlı çalışacak şekilde uygulanabilir:
- Veri yerlerini envanterleyin (çekirdek tablolar, event logları, exportlar, yedekler) ve her biri için bir sahip atayın.
- Veri türüne göre kurallar koyun: sil, anonimleştir veya tut — neden ve saklama süresi ile birlikte.
- Talep alımına kimlik doğrulama ekleyin (hesap ödemeleri varsa sahtekarlık kontrolleri).
- Denetlenebilir bir iş akışıyla yürütün: gerektiğinde onaylar, tutarlı işler ve net zaman damgaları.
- Kişisel veri tekrar saklamadan işi kanıtlayan bir tamamlanma kaydı yazın.
Son nokta birçok ekibin tökezlediği yerdir. Bir "silme sertifikası" eski e‑postayı, tam adı, adresi veya serbest metin notları içermemelidir. Bir vaka kimliği, etkilenen iç kimlikler, yürütülen eylemler, onaylayan kişi ve zaman aralığı tercih edilir.
Unutulan kopyaları izlemek
İyi bir veritabanı iş akışına rağmen kişisel veriler yan kanallara sızar. Dikkat edilmesi gereken dağınık yerler: CSV exportlar, e‑posta gelen kutuları ve iletilen threadler, operasyon veya satış ekiplerinin kullandığı tablolar, destek ticketları ve ekleri, ve webhook ile beslenen üçüncü taraf araçlardır.
Örnek: Bir müşteriyi silmek ama finans ve destek kayıtlarını kullanılabilir tutmak
Bir müşteri hesabının silinmesini istiyor. Aynı zamanda ödenmiş faturalarınız var (vergi ve chargeback ihtilafları için gerekli) ve bir yıllık destek ticketı (kalite metrikleri ve tekrarlayan hata analizi için gerekli). Bu, "gizlilik silme vs denetim ihtiyaçları" çatışmasının klasik örneğidir.
Pratik bir ayrım genellikle şöyle görünür (hukuki dayanağınız sınırlı finansal saklama izni veriyorsa): profil bilgilerini (isim, e‑posta, telefon), kaydedilmiş adresleri, pazarlama tercihlerini, cihaz parmak izlerini ve kişisel bilgi içerebilecek serbest notları kaldırın; destek ticketları ve analitiklerde müşteri kimliklerini rastgele, geri döndürülemez bir token ile anonimleştirin; faturaları, ödeme durumunu, vergi alanlarını ve ne olduğu kanıtlamak için gerekli minimal referansları tutun ve erişimi kısıtlayın.
Destek ticketları insanların ilk olarak acı hissettiği yerdir. Müşteri kaydını hard‑delete yaparsanız zaman çizelgesi kırılır: "Ticket atandı" olayları bağlamını yitirir, metriklerden kayıtlar düşer ve denetçiler bir olayı nasıl ele aldığınızı inceleyemez. Yaygın çözüm tombstone kaydıdır: müşteri satırını tutun, kişisel alanları silin ve silinmiş olarak işaretleyin.
Denetçiler silmenin gerçekleştiğine dair kanıt ister, ama çoğu çalışan kimlik verilerini görmemeli. Kısıtlı geçmiş görünümleri kullanın: normal ajanlar redakte edilmiş alanlar görür, küçük bir gizlilik+finans rolü ise saklama sebeplerini ve yapılan değişiklikleri görebilir.
Son tamamlanma kaydı bir mühendis olmayanın da okuyabileceği şekilde şöyle olabilir:
2026-01-25 14:32 UTC: Deletion request completed for Customer ID 18429.
Personal fields removed (name, email, phone, address).
Support tickets re-linked to Anon ID A9F3K.
Invoices retained for 7 years due to accounting obligations; access limited to Finance role.
Action approved by Privacy Officer (user: m.lee).
Export of retained fields stored.
Yaygın hatalar ve tuzaklar
En büyük tuzaklardan biri "soft delete"i hukuki bir kalkan gibi görmektir. Bir satırı bir bayrakla gizlemek kişisel veriyi veritabanında, yedeklerde, exportlarda ve loglarda bırakır. Politikanız "sil" diyorsa, düzenleyiciler genellikle kişisel alanların kaldırılmasını veya geri döndürülemez şekilde değiştirilmesini bekler, sadece UI'dan gizlenmesini değil.
Bir diğer yaygın problem, anonimleştirilmiş ID'leri gerçek kişilere yeniden eşlemek için bir "gizli" arama tablosu oluşturmak ve sonra çok fazla role buna erişim vermektir. Gerçekten yeniden kimliklendirme yolu gerekiyorsa (ör. kısa süreli bir ihtilaf penceresinde), bunu sıkı kapsamlı, sınırlı erişimli ve güçlü loglama ile yapın.
Tekrar eden problemler:
- Çekirdek veritabanı dışındaki verileri unutmak (exportlar, inboxlar, analitik eventler, eski CSVler).
- Serbest metin alanlarının kişisel veri saklamasına izin verip redaksiyon planı olmaması.
- Joinler, aggregate'ler ve finans uzlaştırmasını kullanan anahtarları silerek raporları bozmak.
- Denetim loglarını aşırı paylaşmak, böylece "herkes her şeyi görebiliyor" hâline gelmek.
- Bir kanıt yolu olmaması: ne oldu, ne zaman ve kim onayladı sorularına cevap verememek.
Serbest metin özellikle zor çünkü kişisel veriyi planlamadığınız yerlere yayar. Erken planlayın: neler girilebileceğini sınırlayın, redaksiyon araçları ekleyin ve kontrol edebileceğiniz yapılandırılmış alanlara zorlayın.
İşinizi dayandıran anahtarları silen bir silme ile dikkatli olun. Bir fatura satırı müşteri kaydına birleşiyorsa, müşteri ID'sini silmek ay sonu toplamlarını mahvedebilir. Tombstone ve kişisel olmayan referans anahtarları, kimliği tutmadan raporlamayı korur.
"İspatla" tasarımını atlamayın. Bir düzenleyici birinin verisine ne olduğunu sorduğunda, tahmine dayanmayan bir yanıt vermeniz gerekir.
Politikayı yayımlamadan önce hızlı kontroller
Bir silme politikasını yayımlamadan önce bir kuru çalışma yapın. Politikalar açık yazıldığında ama tutarlı uygulanamadığında başarısız olur.
Veriyi gerçekten bulabildiğinizden emin olun. Kişisel veri notlarda, destek ticketlarında, event loglarında, eklerde ve zaman içinde eklenen özel alanlarda gizlenir.
Çoğu sorunu yakalayan kısa bir kontrol listesi:
- Tek bir tanımlayıcı kullanarak bir kişi için tüm kişisel veriyi tablolar, loglar, dosyalar ve üçüncü taraf araçlarda bulabiliyor musunuz?
- Hangi alanın silineceğini, anonimleştirileceğini veya tutulacağını (ve neden) işaretleyen bir karar tablonuz var mı?
- Tombstone kullanıyorsanız gerçekten minimal ve dolaylı tanımlayıcıdan arınmış mı?
- Denetim ve geçmiş görünümleri role göre kısıtlanmış mı ve hassas geçmişin her görünümü veya exportu loglanıyor mu?
- Yedekler ve exportlar için bir kuralınız var mı (ne silinir, ne zaman süresi dolar) ve bu süreye uyabilirsiniz?
Eğer herhangi bir cevap "biraz" ise tasarımı sıkılaştırın. "Biraz" genellikle birinin unutulmuş bir export, eski analitik tablosu veya destek ekinde hala kişisel veri içeren bir ek keşfedeceği anlamına gelir.
Pratik bir test, gerçek bir kullanıcı seçip verilerini uçtan uca izlemektir. Hangi yerde görünüyor hepsini yazın, sonra talebi simüle edin: neler hemen değişiyor, neler sonra değişiyor (yedekler gibi) ve neler kalıyor. Ekibiniz bunu bir saatten kısa sürede yapamıyorsa iş akışı hazır değildir.
Sonraki adımlar: Kalıpları ürüne yavaşlatmadan koymak
Kuralları küçük, görünür ve test edilebilir bir şeye dönüştürün. Bir sayfalık karar tablosu işe yarar: veri türü -> eylem -> saklama -> silme sonrası kim ne görebilir. Dili sade tutun ve eylem sayısını sınırlayın, böylece baskı altında insanlar yeni davranışlar icat etmez.
Hafif bir plan:
- En önemli veri türleri (müşteriler, faturalar, ticketlar, mesajlar, cihaz ID'leri) için bir karar tablosu taslağı hazırlayın.
- Birkaç rol seçin ve silme sonrası erişimi tanımlayın (örneğin: agent, manager, auditor).
- İş akışını küçük bir dilimde prototipleyin: müşteri profili + bir finansal kayıt + bir destek kaydı + denetim olayları.
- Gerçek bir uçtan uca silme talebi çalıştırın, exportlar ve raporlar dahil.
- Hukuki bekletmeler ve sahtekarlık istisnaları için açık bir sahip ve süreç tanımlayın.
Eğer AppMaster (appmaster.io) üzerinde bunu uyguluyorsanız, saklama seçimlerini doğrudan veri şemanızda modellemek ve bunları Business Processes ile rol‑temelli ekranlarla zorlamak işleri elle çalıştırma gereksinimini azaltır. AppMaster gereksinimler değiştiğinde gerçek kaynak kodu yeniden oluşturduğundan, saklama kurallarını iteratif olarak değiştirmek ve eski mantığı arkada bırakmamak daha kolay olur.
SSS
Kullanmadığınız kişisel verileri silmeye veya geri döndürülemez şekilde kimliksizleştirmeye çalışırken, önemli iş olaylarını (ödemeler, onaylar, erişimler) kanıtlayacak asgari bir kayıt tutabilirsiniz. Pratik ayrım "olayın kanıtlanması" ile "kişinin tanımlanması" arasındadır.
Hard delete (tam silme) satırı tamamen kaldırır; bu yabancı anahtarları, raporları ve tarihsel referansları bozabilir. Soft delete (yumuşak silme) satırı gizler ama genellikle kişisel veriyi veritabanında bırakır; bu yüzden gizlilik hedefini başaramazsınız, ta ki tanımlayıcı alanları da silip dönüştürmezseniz.
Pseudonymization (pseudonimleştirme) tanımlayıcıları değiştirir ama daha sonra yeniden kimliklendirme yolu bırakır (ör. bir eşleme tablosu veya anahtar). Bu nedenle hassas veri gibi korunmalıdır. Anonymization (anonimleştirme) ise yeniden kimliklendirmeyi makul ölçüde imkânsız kılar; bu daha güvenlidir ama serbest metin veya benzersiz desenler olduğunda doğru yapmak zordur.
Serbest metin genellikle isimler, e‑postalar, telefonlar, adresler ve diğer bağlam bilgilerini içerir, bu da yapılandırılmış alan silme kurallarını atlatır. Metni tutacaksanız redaksiyon kuralları belirleyin veya daha kısa saklama süreli, daha sıkı erişimli ayrı bir depolamaya taşıyın; aksi halde “silme” çoğunlukla görünüşte kalır.
Tombstone, ilişkilerin bozulmaması için kişisel verileri temizleyip yerine minimal bir yer tutucu bırakan kayıttır. Fatura, ticket ve logların aynı ID'ye referans verip raporların çalışmaya devam etmesini sağlar; kullanıcı arayüzünde ise "Silinmiş müşteri" gibi nötr bir etiket gösterilir.
Bütünlük ve kanıt için gereken en az bilgiyi tutun: silinmiş bayrağı, silinme zaman damgası, bir sebep kodu ve join/reconciliation için gerekli içsel kimlikler. Kişiyi doğrudan veya dolaylı tanımlayabilecek hiçbir şey (isimler, e‑postalar, telefonlar, adresler, mesaj içerikleri, ekler veya serbest metin açıklamalar) eklemeyin.
Hangi rollerin hangi geçmiş alanlarına gerçekten ihtiyaç duyduğunu tanımlayın ve varsayılan olarak herkes için redaksiyon uygulayın. Bir soruşturma için daha fazla ayrıntı gerekiyorsa zaman sınırlı erişim verin, bir gerekçe kodu isteyin ve bu erişimi kendisini de ayrı bir denetim kaydıyla loglayın.
Audit loglar “kim neyi ne zaman yaptı” sorusuna yanıt verir ve genellikle ekleme‑sadece (append‑only) olur; kullanıcıya dönük geçmiş ise kullanım kolaylığı içindir ve kimlik bilgileri içerir. Silme sonrası kimliği redakte edilmiş kullanıcı geçmişi ile olay odaklı minimal bir denetim izi tutmak, hesap verebilirliği korurken kişisel veriyi yaygınlaştırmamanın yaygın bir yoludur.
İyi bir tamamlanma kaydı (deletion completion record) alınan işlemleri kanıtlamalı ama kişisel veriyi yeniden getirmemelidir. Bir vaka kimliği, etkilenen iç kayıt kimlikleri, yapılan eylemler, zaman damgaları, onaylayan kişiler ve saklama gerekçeleri gibi bilgileri kullanın; eski e‑posta, tam ad, adres veya silinen verinin ekran görüntülerini saklamayın.
Saklama sonuçlarını doğrudan veri şemanızda modelleyin, ardından silme iş akışını alanları silecek veya dönüştürecek şekilde denetlenebilir bir süreçle uygulayın. AppMaster (appmaster.io) kullanırken ekipler genellikle Business Processes ve rol tabanlı ekranlarla bunu zorunlu kılarak silme işlemlerinin tutarlı, loglanmış ve manuel istisnalara bağımlı olmamasını sağlar.


