Doconut Görüntüleyici uygulamanızın güvenlik sınırının bir parçası haline gelir; sözleşmeler, faturalar, mühendislik çizimleri veya müşteri kayıtları görüntülendiği anda. Doconut görüntüleme katmanını sağlar; çevredeki uygulama hâlâ bir dosyayı kimin açabileceğine, kaynağın nerede depolandığına, türetilen verinin ne kadar süre erişilebilir olduğuna ve soruşturma için neyin kaydedileceğine karar vermelidir.

Doconut'un güvenli belge görüntüleme uygulamaları makalesi, sunucu tarafı render'ı çok katmanlı bir savunma tasarımının bir katmanı olarak açıklar. Bu makale bu nedenle Doconut etrafındaki uygulama sorumluluklarına odaklanır ve uygulama detaylarını bakımda tutulan ürün dokümantasyonuna yönlendirir.
Tehdit Modeliyle Başlayın
“Özel” ve “güvenli” birer yapılandırma değildir. Kontrolleri seçmeden önce önlemek ya da tespit etmek istediğiniz olayları tanımlayın.
| Risk | Örnek | Uygulama kontrolü |
|---|---|---|
| Yetkisiz erişim | Bir kullanıcı URL'deki belge tanımlayıcısını değiştirir | Her istekte nesne düzeyinde yetkilendirme |
| Kiracı geçişi | Geçerli bir kullanıcı başka bir müşterinin dosyasını ister | Yetkilendirme kararına kiracı kapsamı dahil edilir |
| Kaynak ifşası | Depolama yolu veya orijinal dosya doğrudan döndürülür | Sunucu kontrolündeki arama ve render akışı |
| Eski erişim | Bir rol veya durum değiştikten sonra bir bağlantı kullanılabilir kalır | Kısa oturum süresi ve yetkilendirme yeniden doğrulaması |
| Aşırı saklama | Geçici giriş veya çıkış birikir | Görünür sonuçlarla açık yaşam döngüsü işleri |
| Duyarlı günlükleme | Belirteçler veya dosya konumları günlüklerde görünür | Yapılandırılmış redaksiyon ve yalnızca tanımlayıcı telemetrisi |
Riskleri, sisteminizdeki belgeler ve kullanıcılar doğrultusunda önceliklendirin. Kamuya açık broşür kütüphanesi ile hukuki delil portalı aynı izleyiciyi kullandıkları için aynı politikayı paylaşmamalıdır.
Doconut'un hukuki belge inceleme kullanım durumu ürünü, kimlik doğrulamalı dava, sözleşme, delil ve uyumluluk iş akışları içinde ürünün rolü için faydalı bir referanstır. Ayrıca mimari sınırı pekiştirir: izinler, depolama, müşteri kayıtları ve iş kuralları ana uygulamaya yakın kalır.
Belge Açılmadan Önce Yetkilendirme Yapın
Doconut ile belgeyi açmadan önce kimlik doğrulama ve nesne düzeyinde yetkilendirme gerçekleştirin. Resmi .NET 6 veya üzeri kurulum rehberi izleyicinin nasıl yapılandırıldığını ve sunucu tarafı belgenin nasıl açıldığını gösterir; uygulamanızın kimliğini, kiracısını ve belge‑izin kontrollerini bu adımın önüne koyun.
Uygulamanızın sunduğu her ilgili işlem için aynı yetkilendirme kuralını tekrarlayın; sayfalar, küçük resimler, arama, açıklamalar, dönüşüm, indirme ve yazdırma dahil. Bir düğmeyi gizlemek, alttaki isteği korumaz.
Dosya sistemi yolu, depolama anahtarı veya uzak URL'yi doğrudan tarayıcıdan kabul etmeyin. Uygulama‑sahipli bir belge kimliğini sunucuda depolama konumuna çözün, ardından çözülen nesnenin yetkili kiracıya ve iş akışına ait olduğunu doğrulayın.
Görüntüleyiciyi Depolama Politikasından Ayırın
İzleyici saklama sürenizi tanımlamamalıdır. Her depolama sınıfını ve sahibini belgeleyin:
- Kaynak belge — ana içerik veya kayıt politikanız tarafından kontrol edilir.
- Geçici çalışma dosyaları — işleme için oluşturulur ve planlı, gözlemlenebilir bir yaşam döngüsü ile kaldırılır.
- Render edilmiş sayfalar veya önbellekler — minimum faydalı ömürle sınırlıdır ve kaynak gibi korunur.
- Dışa aktarımlar ve yazdırmaya hazır dosyalar — yalnızca kullanıcının ilgili izni olduğunda oluşturulur.
- Günlükler ve denetim olayları — kimlik tanımlayıcıları ve sonuçları içerir, belge içeriği veya kimlik bilgilerini değil.
Aktarım ve dinlenme sırasında şifreleme, web sunucunuz, depolama sağlayıcınız, anahtar yönetiminiz ve dağıtım ayarlarınız tarafından belirlenir. Bu kontrolleri gerçek ortamda doğrulayın; bir izleyici kütüphanesinin varlığından çıkarım yapmayın.
Kısa Süreli Referansları Dikkatli Kullanın
Kısa süreli bir referans, yeniden oynatma süresini azaltabilir, ancak yetkilendirmeyi yerine geçmez. Tasarımınız imzalı bir rota ya da oturum belirteci kullanıyorsa:
- Tek bir belgeye ve amaçlanan işleme bağlayın.
- İş akışına göre dar bir ömür süresi verin.
- Hassas iddiaları veya depolama konumlarını düz metin olarak yerleştirmekten kaçının.
- Yetkili işlemler için yetkilendirmeyi yeniden doğrulayın.
- Doğal sona erme süresinden önce iptalin ne anlama geldiğini tanımlayın.
- Belirteçleri analiz, yönlendirenler, istisna mesajları ve ekran görüntülerinden uzak tutun.
Bir tarayıcı oturumu sona erdiğinde, nötr bir mesaj gösterin ve güvenli bir yeniden kimlik doğrulama yolu sunun. Başka bir kiracının belgeyi sahip olup olmadığını ifşa etmeyin.
İstemci Tarafı Kontrollerinin Ne Yapabileceğini ve Yapamayacağını Anlayın
İndirme veya yazdırma kontrollerini kaldırmak istenen iş akışını iyileştirebilir, ancak gizlilik garantisi vermez. İçeriği görebilen bir kullanıcı hâlâ ekranı yakalayabilir, fotoğrafını çekebilir ya da izleyicinin dışındaki tarayıcı yeteneklerini kullanabilir.
İstemci‑tarafı kısıtlamaları kullanılabilirlik ve caydırma önlemleri olarak değerlendirin. Daha güçlü kontroller, kaynak dosyaları sunucunun arkasında tutmaktan, her ilgili isteğe yetkilendirme uygulamaktan, dışa aktarmaları sınırlamaktan ve politikanız gerektirdiğinde görünür filigranlar kullanmaktan gelir.
Ürün Özelliklerini Uyumluluk İddialarına Dönüştürmeyin
Regülasyon uyumu, amaç, veri kategorileri, yasal dayanak, sözleşmeler, bölgesel işleme, saklama, olay müdahalesi ve organizasyonel prosedürlere bağlıdır. Bir izleyici uyumlu bir tasarımı destekleyebilir, ancak tek başına bir uygulamayı uyumlu hâle getirmez.
Bir GDPR değerlendirmesi için en azından şunları belgeleyin:
- Kaynak ve türetilen dosyaların nerede işlendiği ve depolandığı
- Her hizmet için kim kontrolör ve işlemci olarak hareket ediyor
- Hangi alt işlemcilerin ve aktarımın dahil olduğu
- Silme isteklerinin her depolama sınıfına ve yedekleme politikasına nasıl ulaştığı
- Hangi olayların kaydedildiği ve günlüklerin ne kadar süreyle erişilebilir olduğu
- Erişim incelemelerinin ve olay müdahalesinin nasıl gerçekleştirildiği
Gizlilik ve hukuk paydaşlarının bu kararları dağıtımınız için doğrulamasını sağlayın.
Güvenlik Başlıkları ve Önbellek Kuralları Ekleyin
Kimlik doğrulamalı önizleme rotaları için kısıtlayıcı bir İçerik Güvenlik Politikası, çerçeve politikası, MIME‑sniffing koruması ve yönlendiren politikası değerlendirin. Önizleme bir iframe içinde görünüyorsa, amaçlanan üst kaynakları açıkça belirtin.
Önbellek başlıklarını hassasiyet ve render rotasına göre seçin. no-store bazı yanıtlar için uygun olabilir, ancak performansı etkileyebilir ve zaten başka bir yerde yakalanmış içeriği silmez. Bir başlığa tek başına güvenmek yerine tarayıcı, proxy ve CDN davranışlarını test edin.
Kararları, Sırları Değil, Günlüğe Kaydedin
Faydalı bir denetim olayı şunları içerebilir:
- Kullanıcı ve kiracı tanımlayıcıları
- Belge tanımlayıcısı
- Talep edilen işlem
- Yetkilendirme sonucu
- Zaman damgası ve korelasyon kimliği
- Saklama veya temizlik sonucu
Ham belirteçleri, sorgu dizelerini, depolama URL'lerini, kişisel veri içeren belge adlarını veya çıkarılmış metni günlüğe kaydetmekten kaçının. Denetim günlüklerini değişiklikten koruyun ve yalnızca ihtiyaç duyan ekiplerin erişimine sınırlayın.
Tam Akışı Doğrulayın
Güvenlik testi negatif senaryoları da içermelidir:
- Kimliğinizi korurken belge kimliğini değiştirin.
- Başka bir kullanıcı veya kiracının önizleme URL'sini yeniden kullanın.
- Sayfa, küçük resim, yazdırma ve dışa aktarma uç noktalarına doğrudan çağrı yapın.
- Uzun bir önizleme sırasında oturumu sonlandırın.
- Bir belge açıkken kullanıcının iznini kaldırın.
- Desteklenmeyen, aşırı büyük, bozuk veya parola korumalı girdi gönderin.
- Temizleme işleri uygun verileri kaldırdığını ve hataları raporladığını doğrulayın.
- Günlükleri, analizleri ve hata sayfalarını hassas değerler için inceleyin.
Stabil senaryoları otomatikleştirin ve depolama yapılandırması, tarayıcı politikası ve izleyici‑sürüm değişiklikleri için manuel incelemeyi koruyun.
Sonuç
Güvenlik‑odaklı bir entegrasyon net bir sahiplik gerektirir. Doconut, resmi dokümantasyon tarafından tanımlanan belge‑görüntüleme yeteneğini sağlar; uygulamanız kimlik doğrulama, yetkilendirme, depolama kontrolleri, saklama, izleme ve olay müdahalesi sağlar. Bu sorumlulukları açık tutmak daha güçlü kontroller ve daha dürüst gizlilik iddiaları üretir.