Ayrım veritabanının kendisinde
Kurum ayrımı yalnızca sorgulardaki bir süzgeç değil; veritabanı satır düzeyinde uyguluyor ve uygulama, bu kuralı aşamayan bir rolle bağlanıyor. Kodda unutulan bir süzgeç bu yüzden veri sızdırmıyor.
Verinin nerede durduğu, kimin görebildiği ve neyin iz bıraktığı. Aşağıdakiler tasarım hedefi değil, bugün çalışan ve otomatik testlerle korunan davranışlar.
Kurum ayrımı yalnızca sorgulardaki bir süzgeç değil; veritabanı satır düzeyinde uyguluyor ve uygulama, bu kuralı aşamayan bir rolle bağlanıyor. Kodda unutulan bir süzgeç bu yüzden veri sızdırmıyor.
Hangi kurumun verisine bakıldığı isteğin adresinden belirleniyor; gövdeden ya da kullanıcı girdisinden gelen bir kurum bilgisi hiçbir yerde kabul edilmiyor.
Bir isteğin bıraktığı kurum bağlamı bir sonrakine geçmiyor ve her önbellek anahtarı kurum önekiyle yazılıyor. İkisi de ayrı entegrasyon testleriyle korunuyor.
Parolalar Argon2id ile saklanıyor; veritabanına düz metin ya da zayıf bir özet yazılamıyor. Kullanıcılar davetle katılıyor, parolasız hesap açılamıyor.
Giriş, doğrulayıcı uygulamadan gelen kodla ikinci adıma bağlanabiliyor; yedek kodlar erişimi kaybetmeye karşı duruyor. Art arda başarısız denemeler hesabı kilitliyor.
Bir kişi birden çok kuruma erişebiliyor ve her birinde farklı yetkiye sahip olabiliyor. Rol–yetki eşlemesini kurum kendisi tanımlıyor; bildirim alıcıları bile role değil yetkiye bakılarak seçiliyor. Yönetici, bir kullanıcının açık oturumlarını düşürebiliyor.
Başvuranın iletişim bilgisi ekranda açık durmuyor; görüntülemek ayrı bir adım ve o görüntüleme de denetim izine yazılıyor.
Kimlik numarası, telefon, e-posta, token ve parola loglara maskelenmeden yazılmıyor. Hata ayıklama kaydı üretimde açık kalmıyor.
Kayıtlar fiziksel olarak silinmiyor; silinen kayıt listelerden düşüyor ama denetim izinde izi kalıyor. Saklama süresini kurum seçiyor ve bitişine altı ay kala birden çok yetkiliye hatırlatma gidiyor.
Ek önce erişilemez hâlde kaydediliyor, taraması arka planda yapılıyor ve ancak temiz çıkarsa açılıyor. Taranmamış bir dosya hiçbir hâlde temiz sayılmıyor.
Dosyanın gerçek türü içeriğinden okunuyor; uzantısıyla uyuşmayan dosya reddediliyor. Belgelerdeki aktif içerik ve içi görülemeyen şifreli arşivler kabul edilmiyor.
Tarama zararlı bulursa nesne depodan siliniyor ve kayıt üzerinde bunun izi kalıyor.
Kurumun kendi posta sunucusu gibi ayarlarındaki parolalar veritabanında şifreli duruyor; şifreleme anahtarı ortam değişkeninden geliyor, veritabanında bulunmuyor.
Kim, ne zaman, hangi kurumda, hangi kanaldan, önceki ve sonraki değer. Denetim izi isteğe bağlı bir özellik değil, yazma yolunun parçası.
Adanmış veritabanı ve verinin tutulacağı ülkenin seçimi kurumsal pakette sunuluyor. Ayrıntısı sözleşmeye yazılıyor.
ISO 27001 ya da benzeri bir belge taşımıyoruz ve taşıyormuş gibi de yazmıyoruz. Yukarıdaki maddeler ürünün kendi davranışı; bunları doğrulayan şey otomatik testler, üçüncü bir kurumun denetimi değil.
Kurum ayrımı, yetki denetimi, dosya reddi ve denetim izi için çalışan testler var ve bunları bir değerlendirme görüşmesinde gösterebiliriz.