
Kurumsal Uygulamalarda .NET Belge Görüntüleyicileri için Güvenlik Hususları
Giriş

.NET‑tabanlı bir belge görüntüleyici oluştururken, güvenliği ilk günden düşünmeniz gerekir. Bir görüntüleyiciyi kurumsal bir .NET uygulamasına gömdüğünüzde, yanıt veren soru içeriği gizli tutarken kullanıcılara zengin, etkileşimli bir deneyim sunmanın nasıl sağlanacağıdır. Bir DMS, müşteri portalı veya hukuk‑teknoloji iş akışı inşa ediyor olun, fikri mülkiyet, kişisel veri ve düzenleyici zorunluluklu bilgileri görüntüleme hattının her adımında korumanız gerekir. Bu makalede, kıdemli geliştiriciler ve mimarlar için en yaygın saldırı vektörlerini, riski düşük tutan mimari seçimleri ve Doconut’un evrensel belge görüntüleyicisinin herhangi bir belge‑odaklı .NET çözümü için güvenli bir temel olarak nasıl inşa edildiğini ele alacağız.
1. Gömülü Görüntüleyiciler İçin Tehdit Manzarası
Güzel tasarlanmış bir UI bile, görüntüleyici veri sızdırırsa veya güvensiz kod çalıştırırsa bir saldırı yüzeyi haline gelebilir. Aşağıda en çok karşılaşacağınız üç tehdit kategorisi yer almaktadır:
| Tehdit | Tipik Belirti | İşletme Etkisi |
|---|---|---|
| Veri sızdırma | Doğrudan indirme bağlantıları, güvensiz API’ler veya tarayıcıya ham baytları gönderen istemci‑tarafı renderleme. | Gizli sözleşmelerin kaybı, KVK ihlalleri, düzenleyici para cezaları. |
| Cross‑site scripting (XSS) ve enjeksiyon | PDF veya Office dosyası içinde kötü amaçlı işaretleme, render edildiğinde script çalıştırır. | Oturum kaçırma, kimlik bilgisi hırsızlığı, fidye yazılımı pivotu. |
| Yetkisiz manipülasyon | Kullanıcıların ek açıklama ekleyip değiştirmesi, ardından denetim izleri olmadan değiştirilmiş dosyanın dışa aktarılması. | Hukuki anlaşmazlıklar, sahte kayıtlar, uyumsuzluk ihlalleri. |
Görüntüleyiciler genellikle karmaşık formatları (PDF, DOCX, DWG vb.) render etmek ve ek açıklama ve OCR gibi özellikleri desteklemek zorunda olduğundan, kod yolları büyür—ve daha büyük saldırı yüzeyleri daha cazip hâle gelir. İlk savunma hattı? Güvenilir sunucu‑tarafı işleme ile kontrol edilen istemci‑tarafı etkileşimi arasında net bir ayrım sağlamak.
2. .NET’te Sunucu‑Tarafı ve İstemci‑Tarafı Renderleme
Sunucu‑Tarafının Önemi
- Veri sızıntısı yok – Ham dosya asla güvenilir arka uçtan çıkmaz. Yalnızca render edilmiş görüntüler veya güvenli HTML parçacıkları tarayıcıya gider.
- Merkezi politika uygulaması – Şifreleme, redaksiyon ve görsel işaretlemeler, belge herhangi bir kullanıcıya ulaşmadan önce tutarlı bir şekilde uygulanabilir.
- Ölçeklenebilir izolasyon – Ağır‑ağır dönüşüm (ör. bir CAD DWG’yi raster görüntüye dönüştürme) izole arka plan işlerinde çalıştırılabilir, böylece ele geçirilmiş bir isteğin etkisi sınırlanır.
İstemci‑Tarafının Kabul Edilebilir Olduğu Durumlar
- Düşük‑hassasiyetli ön izlemeler (halka açık broşürler) ve gecikmenin birincil öncelik olduğu durumlar.
- Tüm altyapının hava boşluğunda (air‑gapped) olduğu ve istemcinin güvenilir kurumsal cihazda çalıştığı ortamlar.
Doconut’un Dengeli Mimarisi
Doconut, ağır dönüşüm, OCR ve ek açıklama hazırlığını sunucu tarafında tutarken, herhangi bir modern tarayıcıda çalışan hafif bir HTML5‑tabanlı görüntüleyici sunar. Görüntüleyici üçüncü‑taraf eklentilerine ihtiyaç duymaz ve tüm renderleme, sunucu‑tarafı Viewer bileşeninden gelen akışlardan gerçekleşir. Bu tasarım, birçok güvensiz çözümün geri döndüğü “orijinal dosyayı indir” modelini ortadan kaldırır.
ASP.NET Core Boru Hattına Doconut’u Nasıl Kaydederiz
Kod örneği vermek yerine, kaydı bir ara katman (middleware) bileşeni eklemek olarak düşünün; bu bileşen Doconut görüntü uç noktasına (ör. DocImage.axd) gelen istekleri yakalar ve Doconut’un render motoruna yönlendirir. Ara katman, mevcut kimlik doğrulama/ yetkilendirme mantığınızla her isteği doğrular; ardından görüntü akışı istemciye gönderilir. Ara katmanı, güvenlik kriterlerinizi karşılamayan tüm istekleri reddetmek üzere yapılandırarak yalnızca denetlenen belgelerin render edilmesini sağlarsınız.
3. Erişim, Kimlik Doğrulama ve Yetkilendirme Kontrolü
Erişim Kontrol Stratejisi
Statik bir dosya yolu ya da halka açık bir URL sunmak yerine, Doconut’u mevcut kimlik sağlayıcınızla bütünleştirin. Bir kullanıcı belge talep ettiğinde, sunucu‑tarafı kodunuz şu adımları izlemelidir:
- Kullanıcının kimliğini ve rollerini standart ASP.NET Core kimlik doğrulama hattı üzerinden doğrulayın.
- Ek iş mantığı kontrolleri yapın (ör. kullanıcının doğru departmana ait olduğundan veya belirli bir claim’e sahip olduğundan emin olun).
- Kontroller geçerse, Doconut’un görüntüleyicisini güvenli bir akış oluşturmak için çağırın. Akış mevcut HTTP isteğine bağlanır, bu yüzden oturum sona erdiğinde yeniden kullanılamaz.
Ek Açıklama İzinleri
Doconut’un Ek Açıklama Eklentisi sayfa bazında çalışır. Kullanıcının hakları onaylandıktan sonra, sunucu istenen sayfa için bir AnnotationManager oluşturur. Kullanıcı gerekli claim’e (ör. CanAnnotate) sahip değilse, sunucu sadece salt‑okunur bir görünüm döner ve ek açıklama değişiklikleri gönderilmeye çalışıldığında 403 yanıtı verilir. Böylece yalnızca yetkili personel inceleme yorumları ekleyebilir veya değiştirebilir.
4. Veri Sızıntısını Önleme: Şifreleme, Görsel İşaretlemeler ve Kontrollü Yazdırma
Uçtan Uca Şifreleme
Doconut tarafından işlenen tüm belge akışları HTTPS üzerinden gider ve dinlenme sırasında seçtiğiniz depolama sağlayıcısı (Azure Blob, SQL Transparent Data Encryption vb.) ile şifrelenir. Görüntüleyici yalnızca rasterleştirilmiş sayfaları alır, asıl dosyayı asla almaz; bu yüzden istemci kaynağa doğrudan erişemez.
Ek Açıklama ile Görsel İşaretlemeler (Filigranlar)
Renderleme sunucu tarafında gerçekleştiği için, sayfa tarayıcıya gönderilmeden önce kullanıcı‑özel bir ek açıklama—ör. izleyicinin adı, e‑posta ve zaman damgası içeren yarı‑saydam bir metin katmanı—ekleyebilirsiniz. Bu yaklaşım ekran görüntüsü almayı caydırır ve bir sızıntı durumunda adli kanıt sağlar; aynı zamanda Doconut’un doğrulanmış ek açıklama yetenekleri içinde kalır.
Kontrollü Yazdırma
Birçok kuruluş, belgelerin yalnızca yetkili cihazlarda veya sınırlı sayıda kopya olarak yazdırılmasını ister. Doconut’un Kontrollü Yazdırma özelliği, yazdırma komutunu sunucu tarafında yakalar, kullanıcının rolünü doğrular ve isteğe bağlı olarak “Yazdırıldı” notunu oluşturulan PDF’ye ekler. Yazdırma işi sunucu tarafında oluşturulduğu için istemci işaretlenmemiş bir belge almaz.
5. OCR ve Ek Açıklama İçin Denetim, Günlükleme ve Uyumluluk
Değiştirilemez Denetim İzleri
Her ek açıklama işlemi—ekleme, değiştirme, silme—bir XML yükü üretir ve bu XML bir immutable log (ör. Azure Append Blob veya değiştirilemez bir veritabanı tablosu) içinde saklanabilir. Doconut’un GetAnnotationXml() metodu, her değişiklik sonrası tam durumu döndürür; bu XML’i zaman damgası ve kullanıcı kimliğiyle birlikte kalıcı olarak tutabilirsiniz. İstek‑seviyesi güvenlik kontrolleriyle birleştirildiğinde, kim ne zaman ne gördü, nasıl etkileşimde bulundu sorularına yanıt verebilirsiniz.
Güvenli OCR İşleme
OCR, aranabilir PDF’ler için vazgeçilmezdir, ancak bir risk de taşır: OCR motoru ham metni istemciye yanlışlıkla açığa çıkarabilir. Doconut OCR’ı sunucu‑tarafı çalıştırır ve yalnızca aranabilir indeks verisini döndürür. Orijinal taranmış görüntü şifreli kalır ve aranabilir metin aynı istek‑yaşam döngüsü kurallarına uyan salt‑okunur bir önbellekte saklanır.
Düzenleyici Uyumluluk
Tüm işleme yerinde (veya kontrol ettiğiniz özel bulutta) gerçekleştiği için Doconut, GDPR, HIPAA ve PCI‑DSS gibi korumalı verilerin üçüncü‑taraf SaaS uç noktalarına gönderilmesini yasaklayan gereksinimleri karşılamanıza yardımcı olur. Ürün mimarisi ayrıca audit‑ready logları destekler, bu da uyumluluk raporlarını çok daha az zahmetli hâle getirir.
6. Doconut Güvenlik Gereksinimlerini Rekabet Avantajına Nasıl Dönüştürüyor
| Güvenlik Gereksinimi | Doconut Özelliği | İş Yararları |
|---|---|---|
| Veri sızdırma yok | Sunucu‑tarafı dönüşüm ve akış‑bazlı renderleme | Gizli dosyalar güvenilir ortamdan dışarı çıkmaz. |
| XSS koruması | Temizlenmiş HTML çıktısı, belgelerden istemci‑tarafı script çalıştırmaz | Ek kodlama çabası olmadan saldırı yüzeyi azalır. |
| İnce ayarlı izin uygulaması | Claim‑bilinçli ara katman, sayfa‑bazlı ek açıklama yöneticisi | Mevcut RBAC modelleriyle uyumlu, yönetim yükünü azaltır. |
| Kontrollü yazdırma ve görsel işaretlemeler | Yerleşik yazdırma iş akışı ve ek açıklama‑tabanlı katmanlar | Veri sızıntısını önler ve adli izlenebilirlik sağlar. |
| Denetlenebilirlik | GetAnnotationXml(), istek‑bağlı akışlar, sunucu günlükleri | Finans, hukuk ve sağlık için uyumluluk raporlamasını basitleştirir. |
| Ölçeklenebilir OCR | Sunucu‑tarafı OCR eklentisi, aranabilir indeks JSON olarak döner | Milyonlarca sayfada anlık arama, ham metin açığa çıkmaz. |
| Çapraz‑platform teslim | HTML5 görüntüleyici herhangi bir tarayıcıda çalışır, React, Angular, Vue veya Blazor ile bütünleşir | Masaüstü, mobil ve kiosk dağıtımları arasında yatırımınızı geleceğe taşır. |
Ağır işleri sunucu tarafında hallederek, Doconut iş mantığınıza odaklanmanızı sağlar—örneğin bir sözleşmeyi çok aşamalı onay akışından geçirmeniz veya mühendislik çizimlerini güvenli bir portalda sunmanız. Aynı kod tabanı .NET 6, .NET Core ve en yeni .NET 8 ile çalışır, böylece satıcı bağımlılığı olmadan bir deneyim sunar.
Kendiniz deneyin – Doconut, tüm görüntüleyici, ek açıklama, OCR ve dönüşüm eklentilerini içeren ücretsiz bir deneme sunar. Birkaç dakika içinde örnek bir ASP.NET Core uygulaması başlatın ve güvenlik modelinin pratikte nasıl hissettirdiğini görün.
Temel Çıkarımlar
- Sunucu‑tarafı renderleme ve akış‑bazlı teslim, eski bağlantı saldırılarını ortadan kaldırır ve ham dosyaları güvenilir sınır içinde tutar.
- Merkezi politika uygulaması (şifreleme, redaksiyon, ek açıklama‑tabanlı işaretlemeler) veri istemciye ulaşmadan önce gerçekleşir.
- İnce ayarlı claim kontrolleri, belge açma veya ek açıklama etkinleştirme öncesinde, kurumsal RBAC politikalarıyla uyumu garanti eder.
- Kontrollü yazdırma ve ek açıklama‑tabanlı katmanlar, veri sızıntısını caydırır ve adli kanıt sağlar.
- Değiştirilemez denetim günlükleri,
GetAnnotationXml()ile oluşturulur ve düzenleyici raporlamayı basitleştirir. - HTML5 görüntüleyici, herhangi bir modern tarayıcıda çalışır; React, Angular, Vue veya Blazor ön yüzleriyle mükemmel uyum sağlar.
- Doconut’un ücretsiz denemesi, güvenlik, performans ve geliştirici deneyimini taahhüt vermeden doğrulamanıza olanak tanır.
Sık Sorulan Sorular
S1: Doconut, Word veya Excel dönüşümü için sunucuda Microsoft Office kurulu olmasını gerektiriyor mu?
C1: Hayır. Doconut’un Converter Plugini, tüm Office‑to‑PDF ve diğer format dönüşümlerini sunucu tarafında, yerel bir Office kurulumuna ihtiyaç duymadan gerçekleştirir.
S2: Doconut’u hava‑boşluklu (air‑gapped) bir ortamda kullanabilir miyim?
C2: Evet. Doconut, belgeleri tamamen yerinde işler ve dış SaaS hizmetlerine bağımlı değildir; bu yüzden izole ağlarda sorunsuz çalışır.
S3: Doconut büyük dosyalarla nasıl başa çıkıyor?
C3: Doconut, belge sayfalarını talep üzerine akış olarak sunar; yalnızca gerekli bölümler belleğe yüklenir. Bu sayfalama yaklaşımı arka plan işleriniz ve yüksek ölçekli iş yükleriniz için uygundur.
S4: Görüntüleyici engelli kullanıcılar için erişilebilir mi?
C4: HTML5 görüntüleyici, standart erişilebilirlik uygulamalarını izler ve ARIA öznitelikleriyle genişletilerek WCAG yönergelerine uyum sağlanabilir.
S5: Ücretsiz deneme nereden alınır?
C5: Resmi Doconut sitesini ziyaret edin (Visit the official Doconut site) ve bir deneme lisansı talep edin. Deneme, tüm temel eklentileri—görüntüleyici, ek açıklama, OCR ve dönüşüm—içerir.