Güvenli veri dışa aktarımları: satır limitleri, asenkron işler ve filigranlama
Güvenli veri dışa aktarımları, satır limitleri, asenkron dışa aktarma işleri, filigranlama ve basit onay kontrolleri ekleyerek kazara toplu veri sızıntılarını azaltır.

Dışa aktarmalar neden bu kadar kolay sızıntıya dönüşür?
Dışa aktarma, uygulamanızdan alınan ve bir dosya olarak kaydedilen veri kopyasıdır. Çoğu dışa aktarma, hesap tabloları için CSV veya Excel ya da başka bir araca veri taşımak için JSON olarak sona erer. O dosya uygulamanızdan çıktığı anda iletilebilir, yüklenebilir veya sizin kontrolünüz dışında bir yere kaydedilebilir.
Asıl risk, dışa aktarmaların tetiklenmesinin ne kadar kolay olduğudur. Tek tıklamalık bir dışa aktarma düğmesi, sayfa sayfa görüntüleme, kapsamlı ekranlar veya rol tabanlı erişim gibi uygulama içindeki kontrolleri atlayabilir. Bir tıklama "ihtiyacım olanı göster"i "sahip olduğumuz her şeyi dök"e dönüştürebilir.
İyi bir dışa aktarma kasıtlı ve kapsamlıdır: doğru kişi, fatura için finans ekibine gönderilecek müşteri listesi gibi gerçek bir görev için belirli kayıt kümesini dışa aktarır. Kazara dışa aktarma, kullanıcı dışa aktarmaya izinli ama sonuç beklediklerinden çok daha büyük veya daha hassas olduğunda olur. Veri çalmayı amaçlamadılar; sadece fazla, çok hızlı veri çektiler.
Yaygın bir örnek: bir destek lideri "VIP müşteriler" için biletleri filtreler, sonra bir toplantı için birkaç satır bekleyerek Dışa Aktar'a basar. Dışa aktarma filtreyi göz ardı eder ve her müşteri için tüm biletleri, e-postaları, telefon numaralarını ve dahili notları döndürür. Şimdi o dosya indirmeler klasöründe duruyor ve yanlış e-postaya eklenmeye hazır.
Amaç dışa aktarmaları kapatmak değil. Bunları işe yarar tutmak ama toplu sızıntıya dönüşmelerini engellemektir. Küçük koruyucular çoğu gerçek dünya hatasını kapatır:
- Dışa aktarmaları kullanıcının zaten erişebileceğiyle sınırlayın.
- Büyük dışa aktarmaları daha yavaş ve daha kasıtlı yapın.
- Dosyaları izlenebilir hale getirin, böylece dikkatsiz paylaşım daha az olası olur.
- Hassas alanları varsayılan olarak dışlayın ve dahil etmek için niyet gerektirin.
İç araçlar veya müşteri odaklı iş uygulamaları geliştiriyorsanız, dışa aktarmaları bir kısayol değil, kuralları olan gerçek bir özellik olarak ele alın.
Genellikle neler dışa aktarılır (ve en riskli olanlar neler)
Dışa aktarma düğmeleri işin yapıldığı yerlerde görünür: yönetici panelleri, CRM tarzı müşteri listeleri, destek bilet kuyrukları ve sipariş panoları. Ekipler anlık görüntü paylaşmak, finans için bir şey göndermek veya verileri bir hesap tablosunda temizlemek için dışa aktarır.
Dosya formatı asıl sorun değildir. Sorun dosyanın içindeki alanlardır.
Yüksek riskli alanlar genellikle e-posta adresleri, telefon numaraları, ev veya gönderim adresleri, müşteri kimlikleri, hükümet veya vergi kimlikleri (varsa) ve serbest metin notları içerir. Notlar kolayca küçümsenebilir. İçine her şey girebilir: yanlışlıkla yapıştırılmış parolalar, tıbbi bilgiler, öfkeli mesajlar veya sistemden dışarı çıkması amaçlanmamış dahili yorumlar.
Filtreler, küçük hataların büyük sızıntılara dönüştüğü yerdir. Kullanıcı yanlış tarih aralığını seçer, bir durumu seçmeyi unutur veya yanlış görünümden dışa aktarır. Eksik veya yanlış bir filtre koşulu "geçen haftanın siparişleri"ni "sahip olduğumuz her sipariş"e çevirebilir. Kötü niyet olmasa bile bu toplu bir ifşadır.
Sonra dışa aktarma oluşturulduktan sonraki ikinci risk katmanı vardır. Dosya e-posta ile iletilir, paylaşılan bir sürüme bırakılır veya ekip sohbetine yüklenir. Bu, dosyanın uygulama dışındaki yerlerde kopyalanmasına ve sonradan geri alınamamasına neden olur.
Birkaç varsayılan kabule göre tasarlayın:
- Dışa aktarmalar, aktif olarak hariç bırakmazsanız hassas alanlar içerecektir.
- Filtreler zaman zaman yanlış olacaktır.
- Dosyalar uygulama dışına paylaşılacaktır.
İzinlerle başlayın: kim dışa aktarabilir ve nereden
Çoğu dışa aktarma kaynaklı sızıntı, dışa aktarmayı "sadece başka bir düğme" gibi görmekten kaynaklanır. Önce o düğmeyi kimin görebileceğine karar verin. Birisi işini yapmak için veriyi uygulama dışına taşımasına gerek yoksa dışa aktarma erişimi olmamalıdır.
"Görüntüleyebilir" ile "dışa aktarabilir"i ayırın. Kayıtları ekranda okuyabilen çok sayıda kişi, indirilebilir bir kopyaya ihtiyaç duymaz. Dışa aktarmayı ayrı bir izin olarak tutun ki nadiren verip sıkça gözden geçirebilesiniz.
Genellikle mantıklı olan roller
Rolleri net ve tahmin edilebilir tutun ki insanlar hangi yetkiye sahip olduklarını tahmin etmesinler:
- Görüntüleyici: atanan verileri okuyabilir, dışa aktarma yok
- Yönetici (Manager): kendi ekip veya bölgesi için dışa aktarabilir, sınırlı alanlar ve satır sayısı
- Admin: daha geniş veri setlerini dışa aktarabilir, yine de korumalarla
- Uyumluluk/Denetim: soruşturmalar için dışa aktarabilir, güçlü kayıt ve onaylar ile
"Nereden" de önemlidir. Yönetilmeyen dizüstü bilgisayarlardan veya halka açık ağlardan yapılan dışa aktarmalar, şirket cihazından yapılanlardan farklı risk taşır. Yaygın politikalar arasında dışa aktarmalara sadece şirket IP aralığından, VPN üzerinden veya sadece yönetilen cihazlarda izin vermek bulunur.
Sonunda şu soruyu yanıtlamanız gerekeceğini varsayın: kim neyi, ne zaman dışa aktardı? Kullanıcıyı, rolü, kullanılan filtreleri, satır sayısını, dosya türünü ve isteğin geldiği yeri (IP/cihaz) kaydedin. Bu denetim izi, gizemli bir sızıntıyı çözülebilir bir soruna dönüştürür.
Satır limitleri: işe yarayan en basit koruma
Satır limitleri, dışa aktarmaları varsayılan olarak daha güvenli hale getirmenin en kolay yollarından biridir. "Dışa aktarmalar maksimum 1.000 satırla sınırlıdır" gibi bir kural, birinin Dışa Aktar'a tıklayıp kazara tüm müşteri tablosunu çekmesini önler.
Satır limitini bir emniyet kemeri gibi düşünün. Çoğu dışa aktarma zaten küçüktür. Birisi daha fazlasına ihtiyaç duyduğunda, sessizce büyük bir indirme almak yerine ekstra bir adım atması gerekir.
İki yaygın yaklaşım vardır:
- Sert sınır: örneğin hiçbir zaman 10.000 satırdan fazla olmaz
- Yapılandırılabilir sınır: rol veya veri setine göre değişir; örneğin destek 500 bilet, finans 5.000 fatura dışa aktarabilir ve hiç kimse tam kullanıcı profillerini dışa aktaramaz
Pratik bir desen, dışa aktarmadan önce bir filtre gerektirmektir. "Tümünü dışa aktar"a izin vermek yerine en az bir daraltma zorunlu kılın, böylece kullanıcı kapsamı daraltmak zorunda kalır. Yaygın daraltmalar arasında zaman bazlı veriler için tarih aralığı, bir durum veya sahip/ekip bulunur. Hassas tablolar için filtre olmayan dışa aktarmaları engelleyin.
Ayrıca dışa aktarma başlamadan önce tahmini satır sayısını gösterin. Bu, insanların "tüm zamanlar" hatalarını yakalamasına yardımcı olur.
"Önce örnek al" seçeneği de faydalıdır. Birisi neye ihtiyacı olduğunu bilmiyorsa ilk N satırı (örneğin 50 veya 200) dışa aktarmaya veya önizlemeye izin verin. Bir satış yöneticisi "geçen ay iletişime geçilen müşteriler"i almak isterken filtreyi büyük dosya istemeden önce kontrol edebilir.
AppMaster gibi bir platformda inşa ediyorsanız, bu genellikle önce filtrelenmiş kayıtları saymak, sınırları uygulamak ve istek politika içindeyse dosyayı oluşturmak anlamına gelir.
Asenkron dışa aktarmalar: büyük veriler için daha güvenli ve kontrolü kolay
Büyük dışa aktarmalar yavaştır: binlerce satır, dosya biçimlendirme ve uzun bir indirme süresi. Bunu tek bir istekte yapmaya çalışırsanız sonunda başarısız olur. Tarayıcılar zaman aşımına uğrar, mobil ağlar düşer ve sunucular uzun istekleri keser.
Asenkron dışa aktarma işleri ağır işi arka plana taşıyarak bunu önler ve kullanıcıya basit bir "Dışa aktarmanız hazırlanıyor" akışı sunar.
Asenkron işler ayrıca kuralları uygulamak için iyi bir yerdir. Büyük bir dosyayı anında vermek yerine izinleri kontrol edebilir, limitleri uygulayabilir, isteği kaydedebilir ve dosyanın ne kadar süreyle var olacağını belirleyebilirsiniz.
Basit bir yaşam döngüsü deneyimi net tutar:
- Kuyrukta: istek kabul edildi
- Çalışıyor: dosya oluşturuluyor
- Hazır: dosya indirilmeye hazır
- Süresi doldu: dosya kaldırıldı veya indirme devre dışı bırakıldı
- Hata: hata yakalandı, kullanıcı yeniden deneyebilir (sınırlamalarla)
İşler haline gelen dışa aktarmalarda kötüye kullanımı ve kazaları önlemek daha kolaydır. Bir kullanıcının saatte veya günde başlatabileceği dışa aktarma sayısını hız sınırlayın. Bu, hem gereğinden hızlı tıklamaları hem de hatalı scriptleri korur.
İndirmeleri kısa ömürlü, kalıcı değil olarak ele alın. Tek kullanımlık veya kısa ömürlü indirme token'larını tercih edin, sonra kısa bir pencereden (örneğin 15–60 dakika) sonra veya ilk başarılı indirmeden sonra token'ı geçersiz kılın. Oluşturulan dosyayı yakında silin.
Örnek: bir destek temsilcisi tek seferlik bir müşteri listesine ihtiyaç duyar. İster, hazır olduğunda bildirim alır ve bir kez indirir. Unutursa, bağlantı süresi dolar ve dosya otomatik olarak temizlenir.
Filigranlama: dışa aktarılan dosyaları izlenebilir kılın
Filigran, dosyayı kim oluşturduğunu, ne zaman oluşturulduğunu ve neden oluşturulduğunu gösteren küçük, görünür bir nottur. Paylaşmayı engellemez, ama davranışı değiştirir. İnsanlar isimleri ve zaman damgaları verilerle birlikte yol alırken iki kez düşünür.
Filigranı tutarlı ve okunması kolay yapın. Bir dosya yanlış yerde ortaya çıktığında şu soruları yanıtlayabilmelisiniz: hangi kullanıcı dışa aktardı, hangi ortamdan yaptı ve hangi filtre veya rapordan geldi?
Yaygın filigran formatları:
- Dosya adı:
customers_export_jane.doe_2026-01-25_1432.csv - Başlık notu (CSV'de üst satır, PDF'de ilk satırlar): "Exported by User 1842 on 2026-01-25 14:32 UTC for Customer Support queue"
- Her satıra eklenen ekstra sütun:
exported_by,exported_at,export_job_id - Alt bilgi notu: aynı detayları tekrar edin, böylece kaydırma veya yazdırma sonrası görünür kalır
Basit değiştirilemezlik için sabit bir kullanıcı tanımlayıcısı (sadece görüntü adı değil) ve kesin bir zaman damgası ekleyin. Sisteminiz destekliyorsa bir dışa aktarma iş ID'si ve dışa aktarma parametrelerinden hesaplanmış kısa bir doğrulama kodu ekleyin. Birisi dosyayı düzenlese bile eksik veya uyuşmayan kod bir kırmızı bayraktır.
Kullanılabilirliği dengeleyin; filigranı kısa tutun. Müşteri odaklı dışa aktarmalar için dosya adı ve başlık notları genellikle en iyi çalışır. İç hesap tabloları için ekstra bir sütun genellikle en az müdahaleci olandır.
Sadece gerektiğinde sürtünme ekleyin (onaylar ve onay süreçleri)
Ek adımlar, kullanıcıların zaman baskısı altındayken yaptığı hataları engellediğinde yardımcı olur. Amaç her küçük dışa aktarmaya can sıkıcı tıklamalar eklemek değil. Amaç, dışa aktarma alışılmadık derecede büyük, hassas veya her ikisi olduğunda kullanıcıyı yavaşlatmaktır.
Bir onay ekranı birçok kazara toplu sızıntıyı önleyebilir. Dosya oluşturulmadan önce tahmini satır sayısını ve özellikle kullanıcıların unuttuğu hassas alanları (telefon, adres, notlar) listeleyin. Kullanıcının sistemden dışarı ne alacağını aktif olarak onaylamasını sağlayın.
Gerçekten yardımcı olan bir onay
Kısa tutun, ama spesifik olun. İyi bir onay iki soruyu yanıtlar: "Ne kadar veri alınıyor?" ve "İçinde ne var?"
- Tahmini satırlar (ve izin verilen maksimum)
- Tablo veya rapor adı ve filtre özeti
- Vurgulanmış hassas sütunlar (örneğin: email, telefon, doğum tarihi, SSN)
- Dosya formatı ve hedef (indirme, e-posta ile teslim, depolama)
- Dışa aktarma büyükse zorunlu bir gerekçe alanı
Belirli sütunlar mevcutsa "PII içeriyor" gibi net bir risk bayrağı ekleyin. Kullanıcıların hassas alanları tanımasına güvenmeyin. Veri modelinizde sütunları etiketleyin ki uygulama otomatik uyarı verebilsin.
Yüksek riskli dışa aktarmalar için bir onay adımı ekleyin. Örneğin satır sayısı 10.000'in üzerindeyse veya herhangi bir PII sütunu dahilse yönetici onayı isteyin.
Bildirimler riske göre uyumlu olmalı. Büyük dışa aktarmalar, kim tarafından, neyin dışa aktarıldığını ve ne zaman olduğunu yöneticilere veya veri sahiplerine bildirmelidir. Böylece "eyvah" anları haftalar sonra değil hızlıca yakalanır.
Adım adım: pratik bir güvenli dışa aktarma kurulumu
İyi bir dışa aktarma özelliği sıkıcı hissettirmelidir. İnsanlar ihtiyaç duyduklarını alır ve uygulama sessizce hataları engeller.
Önce üç dışa aktarma yolu tanımlayın: küçük (hızlı, ekranda ihtiyaçlar), büyük (daha uzun raporlar) ve hassas (kişisel, finansal veya gizli alanları içerenler). Bu sınıflandırma hangi kuralların varsayılan uygulanacağını belirler.
Sonra yanlış kullanılması zor varsayılanlar ayarlayın. Normal işinize uyan bir satır sınırı seçin (örneğin 5.000 satır). Dışa aktarmadan önce en az bir daraltma (tarih aralığı, durum, sahip) zorunlu kılın. Geçici depolamada dosya oluşturuyorsanız bunların hızla süresinin dolmasını sağlayın.
Bir dışa aktarma zaman alacaksa, uzun bir bekletmek yerine arka plan işi olarak çalıştırın. Kullanıcı akışı basit kalabilir: dışa aktarma iste, kuyrukta durumunu gör, hazır olduğunda özel dışa aktarma sayfasından indir. Büyük veya hassas dışa aktarmalar ikinci bir kontrol veya onay gerektirebilir.
Oluştururken dosyayı filigranlayın ve bir denetim kaydı yazın. CSV başlığında hafif bir filigran veya PDF altbilgisi bile "bu dosya nereden geldi?" sorusunu daha sonra cevaplanabilir kılar.
Son olarak, insanların gerçekten yaptığı durumları test edin: filtre olmadan dışa aktarma, "tüm zamanlar" aralıklarını seçme, iki kez tıklama, bir zaman aşımından sonra yeniden deneme ve satır limitinin tam sınırında dışa aktarma.
Kazara toplu sızıntılara yol açan yaygın hatalar
Çoğu dışa aktarma olayı "saldırganlar" değil, normal insanların normal bir düğmeye tıklamasıyla olur; düğme beklenenden daha fazlasını yapar. Dışa aktarmalar genellikle ekranlar için kurduğunuz aynı korumaları atlar.
Yaygın bir hata, UI filtresine güvenmektir. Kullanıcı sayfada "son 30 gün" filtresi ile çalışır, ama dışa aktarma uç noktası bu kısıtlamaları içermeyen yeni bir backend sorgusu çalıştırır. Dosya sonra kullanıcının gördüğünden çok daha fazla satır içerir.
Tekrarlanan desenler şunlardır:
- "Adminler her şeyi dışa aktarabilir" ama denetim izi yok. Kim, ne zaman ve kaç satır dışa aktarıldığını cevaplayamıyorsanız sorunları erken fark edemezsiniz.
- Hiç süresi dolmayan dışa aktarma dosyaları. Sohbette veya e-postada unutulmuş bir indirme bağlantısı aylardır birikip sızıntıya dönüşür.
- Yalnızca ekranda görünen filigranlar. Veri CSV veya PDF olunca dosya içinde izlenebilir işaretler olmalı.
- Yeniden denemeler birden fazla kopya oluşturur. İhraç yavaşsa kullanıcı tekrar tıklar ve farklı yerlerde aynı dosyanın birkaç kopyası oluşur.
- Sahiplik kontrolleri olmayan asenkron işler. Bir dışa aktarma arka planda çalışıyorsa, sonucun yalnızca istekte bulunanın (veya onaylı bir rolün) indirebildiğinden emin olun.
Küçük bir örnek: bir destek yöneticisi "açık biletleri" dışa aktarır, zaman aşımı alır, üç kez tekrarlar ve sonra en "güncel" dosyayı iletir. Gerçekte erken oluşturulan dosyalardan biri UI'ya özel filtreyi görmezden geldiği için kapalı biletleri de içermiştir.
Yayımlamadan önce hızlı kontrol listesi
Bir indirme düğmesi eklemeden önce dışa aktarmaları bir güvenlik özelliği gibi ele alın, sadece bir kolaylık olarak değil. Çoğu kazara sızıntı, kolay yolun normal bir kullanıcının olması gerekenden çok daha fazla veri çekmesine izin vermesinden kaynaklanır.
- Her dışa aktarmaya varsayılan bir üst sınır koyun. Birileri filtreyi unutsa bile makul bir maksimum satır sayısı uygulayın.
- Hassas dışa aktarmaların hedeflenmiş olduğunu kanıtlamasını sağlayın. En az bir daraltma gerektirin ve dosya oluşturulmadan önce tahmini satır sayısını gösterin.
- Büyük dışa aktarmaları arka plan işlerine taşıyın. Dosyayı asenkron oluşturun, kullanıcıyı hazır olduğunda bildirin ve indirmeyi hızlıca süresinin dolmasını sağlayın.
- Dosyayı izlenebilir kılın. Kim tarafından ve ne zaman dışa aktarıldığını gösteren hafif bir filigran ekleyin.
- Her dışa aktarmayı bir denetim etkinliği gibi kaydedin. Hangi veri setinin ve filtrelerin kullanıldığını, satır sayısını ve kim tarafından tetiklendiğini not edin.
Basit bir senaryo: bir destek temsilcisi yanlışlıkla "Tüm müşteriler" yerine "Bu ay" seçmesi gerekirken "Tüm müşteriler"i seçer ve dışa aktarır. Satır limiti, satır sayısı önizlemesi ve süresi dolan bir dışa aktarma işi ile o hata rahatsız edici bir olay olur ama bir ihlal olmaz.
Örnek: gerçekçi bir "hop" dışa aktarma ve nasıl önlenir
Mina bir destek ekibine liderlik ediyor. Her ayın ilk Pazartesi'si, finansın iadeleri sayması ve operasyon ekibinin tekrar eden sorunları görmesi için biletleri dışa aktarır. Bu normal bir görevdir ve genellikle zaman baskısı altında yapılır.
Bir sabah Mina Biletler tablosunu açar ve CSV Dışa Aktar'a tıklar. "Geçen ay" filtresini uygulamayı unutmuştur. Ekran hâlâ 50 satır gösterdiği için her şey normal görünür. Ancak dışa aktarma yıllarca süren tüm biletleri, müşteri e-postalarını, notları ve dahili etiketleri içerecektir.
İşte koruyucuların önemi burada ortaya çıkar. Uygulama sessizce büyük bir dosya oluşturmak yerine küçük, pratik geri bildirimlerle müdahale eder.
Önce, bir satır limiti kazara toplu çekmeyi durdurur. Mina "Dışa aktarma 10.000 satır ile sınırlandı. Seçiminiz 184.392." gibi bir mesaj görür. Hala raporunu alabilir ama tarih aralığını daraltmak zorundadır.
İkinci olarak, onay adımı sistemden çıkacakları açıklayarak işlemi durdurur. Satır sayısını, filtre özetini ve dahil edilen en hassas sütunları gösterir. Mina özette "Tarih: Tüm zamanlar" yazdığını görünce eksik filtresini fark eder.
Üçüncü olarak, belirli bir boyutu aşan her şey asenkron iş olarak çalıştırılır. Bu iş, bir eşik üzerinde yönetici onayı gerektirebilir; böylece büyük dışa aktarmalar refleks tıklamalar değil kasıtlı hareketler olur.
Bu senaryo için yapı basittir:
- Net bir satır limiti (kullanıcıya nasıl düzelteceğini söyleyen açık bir mesajla)
- Satır sayısı ve filtre özeti gösteren dışa aktarma onayı
- Büyük dosyalar için onay eşiğiyle asenkron dışa aktarma işleri
- Dosyada filigranlama (kullanıcı, zaman ve bağlam)
Mina filtreyi düzeltir, dışa aktarma tamamlanır ve finans raporu alır. Yakın bir yanlış adım asla toplu bir veri sızıntısına dönüşmez.
Sonraki adımlar: bu kuralları uygulamanızın varsayılan davranışına dönüştürün
Dışa aktarma güvenliğini hızla artırmanın en hızlı yolu, bir kerede bir koruma yayımlamak ve sonra bunu tüm dışa aktarmalara uygulamaktır. Önce yanlış bir şeye tıklanıldığında zararı azaltan kontrolleri (satır limitleri ve denetim kaydı) ekleyin. Bunlar yerleştikten sonra arka plan işleri ve filigranlamayı ekleyin; bu size daha iyi kontrol ve izlenebilirlik sağlar.
Kurallar eklemeden önce net sahipler atayın. Dışa aktarmalar sadece mühendisliği ilgilendirmez: operasyonlar iş akışlarını bilir, hukuk saklama ve sözleşmeleri bilir, güvenlik verinin nereye gitmemesi gerektiğini bilir. Her hassas veri kümesi için bir kişi "evet" veya "hayır" diyebilmeli.
Kısa bir politika bile çoğu kazayı önleyebilir:
- Her dışa aktarma için varsayılan üst satır limiti, daha yüksek sınırlar sadece onaylı roller için
- Dışa aktarma bağlantıları/dosyaları hızla (saatler içinde) süresi dolar, haftalar değil
- Hassas veri kümeleri (PII, ödemeler, sağlık, destek notları) için onaylar gerekli
- Her dışa aktarma kaydedilir (kim, ne, ne zaman, satır sayısı, filtreler)
- Hassas dosyalar için filigranlama etkin
Eğer ekibiniz no-code veya karışık ise, AppMaster bu koruyucuları uygulamanın içine gömmek için pratik bir çözüm olabilir: Veri Tasarımcısı'nda veriyi modelleyin, rol tabanlı erişimi uygulayın ve İş Süreci Düzenleyicisi ile dışa aktarma işleri, limitler, kayıt ve süre bitimi adımlarını standartlaştırın.
İlk güvenli dışa aktarmanız kuralları izledikten sonra, bunu bir şablona dönüştürün. Yeni dışa aktarmalar aynı limitleri, kayıtları ve onay adımlarını varsayılan olarak miras almalı. Bu haftalarda bir riskli tabloda başlayıp kalıbı tüm uygulamaya yayabilirsiniz.
SSS
Dışa aktarımlar, uygulama içindeki kontrollü erişimi dosya hâline getirir; bu dosya kopyalanabilir, iletilebilir veya uygulamanızın korumalarından bağımsız olarak yüklenebilir. En yaygın sızıntı türü kazara oluşandır: bir kullanıcı küçük, filtrelenmiş bir dilim beklerken ekranda gördüğünden çok daha fazla veri içeren bir dosya alır.
Varsayılan olarak hayır; bir kişinin işine veriyi uygulama dışına taşımak girmiyorsa dışa aktarma izni verilmemeli. can_export iznini can_view izninden ayrı tutun, böylece insanlara kayıtları okuma hakkı verip indirme hakkı vermemek mümkün olur.
Normal işleri kapsayacak şekilde muhafazakar bir sınırla başlayın; örneğin 1.000–5.000 satır arası. Her dışa aktarmada bu sınırı uygulayın. Daha fazlasına ihtiyaç varsa geniş bir izin yerine önce daha dar bir filtre veya yükseltilmiş rol isteyin.
Dışa aktarmayı UI durumundan değil, sunucu tarafındaki sorgu kaynağından çıkış alın. Backend filtre parametrelerini kesin olarak almalı, doğrulamalı ve dosya oluşturmadan önce tahmini satır sayısını hesaplamalı; böylece "tüm zamanlar" hataları görünür olur.
Dosyalar büyükse, tek bir istek içinde zaman aşımına uğrayabilecekse veya uzun sürüyorsa asenkron dışa aktarma işleri kullanın. Arka plan işleri ayrıca politika kontrolleri uygulamak, kayıt tutmak ve indirme davranışını kontrol etmek için uygun bir yerdir.
Varsayılan olarak kısa ömürlü yapın: dosyayı oluşturun, kısa bir süre için indirmeye izin verin, sonra dosyayı silin veya token'ı devre dışı bırakın. Bu, eski dosyaların sohbetlerde veya paylaşımlarda uzun süre kalıp tekrar ortaya çıkma riskini azaltır.
Filigran, dosyanın kaynağını hızlıca gösteren bilgileri içermeli: "kullanıcı ID, zaman damgası ve iş ID" gibi. Filigran paylaşımı engellemez ama dikkatsiz paylaşımı caydırır ve dosya yanlış yerde bulunursa soruşturmayı hızlandırır.
Her dışa aktarmayı denetim etkinliği gibi kaydedin: kim, hangi veri kümesini veya raporu, hangi filtrelerle, kaç satır, hangi dosya tipi ve isteğin kaynağı (IP veya cihaz bilgisi) ile tetiklendi. Bu, kimliklendirme ve geri izleme için gerekli verileri sağlar.
Hassas alanları varsayılan olarak dışlayın ve dahil etmek için açık niyet gerektirin. En güvenli yol, sütunları veri modelinde hassas olarak etiketlemek; uygulamanın bu sütunlara göre otomatik uyarı vermesini, onay isteğini veya bloke etmesini sağlar.
Sadece dışa aktarma alışılmadık şekilde büyük veya hassas veri içerdiğinde ek adımlar koyun. İyi bir onay ekranı tahmini satır sayısını ve net bir filtre özeti gösterir; yüksek riskli dışa aktarmalarda yönetici onayı isteyebilirsiniz, böylece büyük indirmeler kasıtlı olur.


