Hassas veri uygulama kodunda unutulursa, sızıntı kullanıcı ekranına ve log sistemine çoktan ulaşmış olur.
Hassas veri maskeleme çoğu kurumda uygulama ekiplerinin sorumluluğuna bırakılır. Ancak modern yapılarda onlarca mikroservis, farklı ekipler, farklı release döngüleri ve eski uygulamalar aynı anda çalışır. Bir serviste unutulan kart numarası, kimlik alanı, e-posta listesi veya oturum bilgisi production yanıtına ya da loglara düşebilir.
Bu risk yalnızca dış kullanıcı ekranıyla sınırlı değildir. Debug logları, access logları, SIEM kayıtları, hata izleme sistemleri ve destek ekiplerinin eriştiği kayıtlar hassas veri taşıyabilir. Veri bir kez log sistemine girdikten sonra retention, yedekleme ve erişim kontrolü nedeniyle temizlenmesi zorlaşır.
Bazı güvenlik çözümleri yalnızca hassas veriyi tespit eder veya yalnızca log tarafında maskeleme yapar. Ancak response body içinde kullanıcıya dönen veri değiştirilmeden bırakılırsa asıl sızıntı devam eder. Sadece replace yapan basit yaklaşımlar da her senaryoda yeterli değildir; bazen son 4 haneyi göstermek, bazen tamamen maskelemek, bazen de belirli karakterleri hariç tutmak gerekir.
Doğru yaklaşım, hassas veri korumasını uygulama koduna bağımlı olmayan bir edge politikasına dönüştürmektir. Response body, log IP bilgisi ve cookie içeriği ayrı ayrı ele alınmalı; regex, string match, mask karakteri, offset ve minimum tekrar gibi kontrollerle esnek maskeleme yapılmalıdır.
TR7 Hassas Veri Maskeleme bu modeli sunar: hassas veriyi kullanıcıya ve loglara ulaşmadan önce platform seviyesinde maskeleyerek veri sızıntısı riskini azaltır.
Yaklaşımımız
TR7, hassas veri korumasını response body maskeleme, log IP anonimleştirme, çerez şifreleme ve tespit sinyalleriyle birlikte uygular.
Response body maskeleme veri dışarı çıkmadan uygulanır
TR7, yanıt body'sinde string veya regex eşleşmesi yaparak hassas alanları maskeleyebilir veya değiştirebilir. Bu sayede kurum servisi değiştirilmeden, kullanıcıya dönen içerik edge seviyesinde kontrol edilir.
Log seviyesinde IP maskeleme kayıt riskini azaltır
ipMask kuralı ile loglarda istemci IP bilgisinin maskelenmesi sağlanabilir. Bu yaklaşım, veri saklama ve uyumluluk süreçlerinde kişisel veri görünürlüğünü azaltmaya yardımcı olur.
Cookie encryption oturum bilgisini istemci tarafında korur
cookieEncryption kuralı seçilen çerez değerlerini AES-256-GCM ile şifreleyebilir. Kullanıcı tarafında çerez içeriği anlamlı biçimde okunamaz hale gelirken, platform gerekli akışta bu değeri yönetebilir.
Hassas veri tespiti saldırı ve sızıntı sinyali üretir
Test kart numarası gibi bilinen hassas veri pattern'leri güvenlik sinyali olarak yakalanabilir. Bu tespitler skor, log ve olay inceleme süreçlerinde veri sızıntısı ihtimalini görünür hale getirir.
Yetenekler
Hassas Veri Maskeleme, response body, log ve cookie katmanlarında farklı veri koruma stratejilerini birlikte sunar.
modifyResponse kuralı response body üzerinde maskeleme ve değiştirme yapar
modifyResponse kuralı response aşamasında çalışır ve yanıt body'sindeki eşleşen verileri işleyebilir. modifyType değeri mask, replace veya htmlTag olarak seçilebilir. Mask modu karakter bazlı gizleme, replace modu tamamen değiştirme, htmlTag modu ise yanıta kontrollü HTML veya script ekleme için kullanılır. Bu esneklik, yalnızca veri gizleme değil, response dönüşümü gerektiren senaryoları da kapsar.
Regex ve string eşleşmesi kullanıcı tanımlı hassas veri pattern'lerini destekler
TR7, matcher ve matcherType alanlarıyla literal string veya regex tabanlı eşleşme yapabilir. Kullanıcı, TC kimlik, IBAN, kart numarası, telefon, e-posta veya kurum özelindeki veri formatları için kendi pattern'ini tanımlayabilir. Hazır PII katalogu varmış gibi davranılmaz; kontrol operatörün tanımladığı pattern'e dayanır. Bu yaklaşım, farklı ülke ve sektör formatlarını aynı esneklikte destekler.
Mask karakteri, offset ve minimum tekrar ayarları yanlış pozitifleri azaltır
maskChar ile kullanılacak maskeleme karakteri seçilebilir ve bu değer tek karakter olarak doğrulanır. maskOffset değeriyle baştan veya sondan kaç karakterin görünür kalacağı belirlenebilir; 0 seçilirse tüm eşleşme maskelenebilir. maskFrom ile belirli sayıda tekrar oluşmadan maskeleme uygulanmayabilir. Bu ayarlar, hem kullanıcı deneyimini hem de yanlış pozitif riskini daha kontrollü hale getirir.
Kısmi maskeleme son hane gösterimi gibi uyumlu senaryoları destekler
Kart numarası veya hesap referansı gibi verilerde bazen tamamını gizlemek yerine yalnızca son birkaç karakteri göstermek gerekir. TR7, maskOffset ile bu davranışı yapılandırabilir. Örneğin son 4 haneyi görünür bırakıp kalan karakterleri maskelemek mümkündür. Bu, destek ve müşteri doğrulama süreçlerinde kullanılabilirliği korurken veri sızıntısı riskini azaltır.
Replace modu hassas değeri tamamen güvenli metinle değiştirir
replace modunda eşleşen veri belirlenen replacement değeriyle tamamen değiştirilebilir. Bu, hassas değeri yıldızlamak yerine sabit bir açıklama, boş değer veya kurum standardı bir placeholder ile değiştirmek isteyen ekipler için uygundur. Replace yaklaşımı, özellikle yanıt formatının bozulmadan korunması gereken durumlarda dikkatli kullanılmalıdır. Operatör her pattern için maskeleme veya değiştirme stratejisini ayrı seçebilir.
Streaming ve chunked yanıtlar üzerinde body maskeleme çalışabilir
TR7, response body işleme hattında chunked veya streaming gelen yanıtları da maskeleme sürecine dahil edebilir. Bu, modern uygulamalarda tek parça body varsayımına bağlı kalmadan veri koruma sağlar. Body işleme buffer sınırlarıyla birlikte planlanmalıdır. Çok büyük response'larda performans, bellek ve maskeleme kapsamı servis ihtiyacına göre ayarlanmalıdır.
Response body boyut sınırı kontrollü performans yönetimi sağlar
Response body maskeleme varsayılan olarak 16 KB sınırıyla çalışacak şekilde planlanabilir. İhtiyaç halinde arayüzden daha büyük boyutlara çıkarılabilir; ancak yüzlerce MB seviyesindeki maskeleme kararları performans etkisiyle birlikte değerlendirilmelidir. Bu sınır, edge seviyesinde veri koruma ile trafik performansı arasında denge kurmaya yardımcı olur. Operatör kritik servislerde kapsamı bilinçli olarak belirler.
Cookie encryption seçilen çerez değerlerini AES-256-GCM ile korur
cookieEncryption kuralı çerez içeriğinin istemci tarafında okunabilir kalmasını engellemek için kullanılır. Seçilen cookie değerleri AES-256-GCM ile şifrelenebilir. Bu kural pool başına bir kez kullanılacak şekilde tasarlanır ve tekrarlı çakışmaları engeller. Oturum veya sticky cookie bilgileri böylece kullanıcı tarafında anlamlı veri olarak görünmez.
IP log mask istemci IP bilgisini kayıt düzeyinde anonimleştirir
ipMask kuralı, log alanlarında istemci IP bilgisinin maskelenmesine yardımcı olur. Bu özellik, KVKK/GDPR benzeri veri koruma beklentileri olan ortamlarda log retention riskini azaltır. Uygulama trafiği çalışmaya devam ederken kayıt tarafındaki kişisel veri görünürlüğü sınırlandırılabilir. Güvenlik ve uyumluluk ekipleri log detay seviyesi ile gizlilik ihtiyacını birlikte yönetir.
Test kart numarası tespiti sızıntı ve zayıf test ayrımı sinyali üretir
TR7, bilinen test kredi kartı numarası pattern'lerini güvenlik sinyali olarak yakalayabilir. Bu tespit doğrudan maskeleme kuralı olmak zorunda değildir; skor, log ve olay inceleme sinyali olarak kullanılabilir. Test veya geliştirme verisinin production yanıtlarına sızması bu şekilde daha hızlı görünür hale gelir. Operasyon ekibi bu sinyali veri sızıntısı veya yanlış ortam kullanımı açısından inceleyebilir.
Operasyonel derinlik
Hassas veri maskeleme; response filter, regex davranışı, mask parametreleri, cookie şifreleme, IP maskeleme ve body sınırlarıyla birlikte işletilir.
Response filter davranışı
Her modifyResponse kuralı response body üzerinde ayrı filter olarak çalışabilir. Eşleşen içerik maskeleme veya değiştirme işleminden geçirilir ve yanıt geri yazılır. Bu işlem response aşamasında yapıldığı için request tarafı kurallarından ayrı değerlendirilmelidir.
Regex ve string modu
matcherType regex seçildiğinde pattern tabanlı eşleşme yapılır; string seçildiğinde literal eşleşme uygulanır. Regex kuralları güçlüdür fakat dikkatli yazılmalıdır. Aşırı geniş veya pahalı pattern'ler performans ve yanlış pozitif riski oluşturabilir.
Mask karakter doğrulaması
maskChar tek karakter olacak şekilde doğrulanır. Varsayılan değer yıldız karakteridir. Tek karakter zorunluluğu, maskeleme çıktısının tahmin edilebilir ve tutarlı kalmasına yardımcı olur.
Offset ve tekrar kontrolü
maskOffset 0 olduğunda tüm eşleşme maskelenebilir; daha yüksek değerlerde belirli sayıda karakter görünür kalabilir. maskFrom değeri, maskelemenin uygulanması için minimum tekrar sayısını belirler. Bu ayarlar özellikle yanlış pozitif azaltma ve okunabilirlik dengesinde önemlidir.
Ayrı koruma hatları
cookieEncryption, ipMask ve modifyResponse aynı pipeline'ın tek varyasyonu değildir; farklı rule type'ları olarak çalışır. Response body, log ve cookie katmanı ayrı davranışlarla korunur. Bu ayrım, her veri sızıntısı kanalına uygun kontrol seçmeyi sağlar.
Body sınırı planlaması
Response body maskeleme buffer sınırları içinde değerlendirilir. Varsayılan 16 KB sınırı birçok API yanıtı için yeterli olabilir; daha büyük yanıtlar için arayüzden artırma yapılabilir. Büyük değerlerde performans etkisi ve bellek kullanımı ayrıca planlanmalıdır.
Hangi senaryolarda kullanılır
Bankacılık API yanıtında kart numarası maskeleme
Bankacılık ekipleri kart numarası benzeri değerleri regex ile yakalayıp son 4 hane görünür kalacak şekilde maskeleyebilir. Kurum servisi değiştirilmeden response body edge seviyesinde korunur.
Sağlık portalında kimlik bilgisini tamamen gizleme
Sağlık portalları TC kimlik veya hasta referans numarası gibi alanlar için kullanıcı tanımlı regex yazabilir. Eşleşen veri tamamen maskelenerek hassas bilginin kullanıcı ekranına veya ara sistemlere taşınması azaltılır.
Loglarda istemci IP bilgisini anonimleştirme
Uyumluluk ekipleri ipMask ile istemci IP bilgisinin loglarda maskelenmesini sağlayabilir. Böylece log retention sürecinde kişisel veri görünürlüğü azaltılırken operasyonel kayıt akışı korunur.
Oturum çerezini istemci tarafında okunamaz hale getirme
E-ticaret ve finans servisleri cookieEncryption ile seçilen oturum veya sticky cookie değerlerini şifreleyebilir. Kullanıcı tarafında çerez içeriği anlamlı veri olarak görünmez ve kurcalama riski azalır.
Sık sorulanlar
Response body maskeleme hangi veri tipleri için kullanılabilir?
Mask modu ile replace modu arasındaki fark nedir?
cookieEncryption ve modifyResponse aynı pipeline'da mı çalışır?
Büyük response body'lerinde maskeleme nasıl planlanmalıdır?
IP maskeleme yalnızca loglarda mı etkilidir?
maskFrom parametresi ne işe yarar?
Hassas veriyi platform seviyesinde koruyun
Response body, log ve cookie katmanlarında veri sızıntısı önleme. Kendi servislerinizle canlı bir kurulumda gezdirelim.