Kurumsal Uygulamalarda .NET Belge Görüntüleyicileri için Güvenlik Hususları
← Back to Blog8 min read

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

Giriş

Doconut ile gömülü .NET belge görüntüleyicileri için güvenlik mimarisi
Doconut ile gömülü .NET belge görüntüleyicileri için güvenlik mimarisi

.NET‑tabanlı bir belge görüntüleyici oluşturmak, güvenliği ilk günden düşünmeniz gerektiği anlamına gelir. Bir görüntüleyiciyi kurumsal bir .NET uygulamasına gömdüğünüzde, yanıtı yanıcı soru içeriği gizli tutarken kullanıcılara zengin, etkileşimli bir deneyim sunmanın nasıl sağlanacağıdır. İster bir DMS, ister bir müşteri portalı, isterse bir hukuk‑teknoloji iş akışı oluşturuyor olun, görüntüleme hattının her adımında fikri mülkiyet, kişisel veriler ve düzenleyici zorunlu bilgiler korunmalıdır. Bu makalede, kıdemli geliştiricileri ve mimarları en yaygın saldırı vektörleri, riski düşük tutan mimari seçimler 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ği konusunda yönlendireceğiz.


1. Gömülü Görüntüleyiciler için Tehdit Manzarası

Güzel tasarlanmış bir kullanıcı arayüzü bile, görüntüleyici veri sızdırırsa veya güvenilmeyen kod çalıştırırsa bir saldırı yüzeyi haline gelebilir. Aşağıda muhtemelen karşılaşacağınız üç tehdit kategorisi yer almaktadır:

TehditTipik Görünümİş Etkisi
Veri sızdırmaDoğrudan indirme bağlantıları, güvenli olmayan API'ler veya tarayıcıya ham baytları gönderen istemci‑tarafı renderleme.Gizli sözleşmelerin kaybı, Kişisel Veri İhlalleri, düzenleyici para cezaları.
Cross‑site scripting (XSS) ve enjeksiyonPDF veya Office dosyası içinde, render edildiğinde script çalıştıran kötü amaçlı işaretleme.Oturum ele geçirme, kimlik bilgisi hırsızlığı, fidye yazılımı pivotu.
Yetkisiz manipülasyonKullanıcıların ek açıklamaları eklemesi veya değiştirmesi, ardından denetim izleri olmadan değiştirilmiş dosyayı dışa aktarması.Hukuki anlaşmazlıklar, sahte kayıtlar, uyum ihlalleri.

Görüntüleyicilerin genellikle karmaşık formatları (PDF, DOCX, DWG vb.) render etmesi ve yorum ve OCR gibi özellikleri desteklemesi gerektiğinden, kod yolları büyür—ve daha büyük saldırı yüzeyleri daha cazip hale gelir. İlk savunma hattı? Güvenilir sunucu‑tarafı işleme ile kontrollü istemci‑tarafı etkileşim arasında net bir ayrım sağlamak.


2. .NET'te Sunucu‑Tarafı ve İstemci‑Tarafı Renderleme

Sunucu‑Tarafının Önemi

  • Sıfır veri ifşası – Ham dosya asla güvenilir arka uca çıkmaz. Yalnızca render edilmiş görüntüler veya güvenli HTML parçacıkları tarayıcıya gider.
  • Merkezi politika uygulaması – Şifreleme, kırpma ve görsel işaretlemeler belge herhangi bir kullanıcıya ulaşmadan önce tutarlı bir şekilde uygulanabilir.
  • Ölçeklenebilir izolasyon – Ağır dönüşüm (örneğin bir CAD DWG'yi raster görüntüye dönüştürmek) izole arka plan görevlerinde çalıştırılabilir, ele geçirilmiş bir isteğin etkisini sınırlayarak.

İstemci‑Tarafı Kabul Edilebilir Durumlar

  • Düşük hassasiyetli ön izlemeler (kamu broşürleri) ve gecikmenin birincil endişe olduğu durumlar.
  • Tüm altyapının hava boşluğu (air‑gapped) olduğu ve istemcinin güvenilir bir kurumsal cihazda çalıştığı ortamlar.

Doconut'un Dengeli Mimarisi

Doconut, ağır dönüşüm, OCR ve yorum hazırlığını sunucuda tutarken, herhangi bir modern tarayıcıda çalışan hafif bir HTML5‑tabanlı görüntüleyici sunar. Görüntüleyici hiçbir zaman üçüncü‑taraf eklentilerine ihtiyaç duymaz ve tüm renderleme, sunucu‑tarafı Viewer bileşeninden gelen akışlardan elde edilir. Bu tasarım, birçok güvensiz çözümün geri döndüğü “orijinal dosyayı indir” kalıbını ortadan kaldırır.

Doconut'u bir ASP.NET Core hattına nasıl kaydederiz

Kod parçacığı yerine, kaydı Doconut görüntü uç noktası (ör. DocImage.axd) için istekleri yakalayan ve Doconut'un render motoruna yönlendiren bir ara katman bileşeni eklemek olarak düşünün. Ara katman, görüntü akışının istemciye gönderilmesinden önce her isteği mevcut kimlik doğrulama/ yetkilendirme mantığınızla doğrular. Ara katmanı, güvenlik kriterlerinizi karşılamayan tüm istekleri reddetmek üzere yapılandırarak yalnızca denetlenmiş belgelerin render edilmesini sağlarsınız.


3. Erişim, Kimlik Doğrulama ve Yetkilendirme Kontrolü

Erişim Kontrol Stratejisi

Statik bir dosya yolu veya genel bir URL yayınlamak yerine, Doconut'u mevcut kimlik sağlayıcınızla entegre edin. Bir kullanıcı belge talep ettiğinde, sunucu‑tarafı kodunuz şunları yapmalıdır:

  1. Kullanıcının kimliğini ve rollerini standart ASP.NET Core kimlik doğrulama hattı üzerinden doğrulamak.
  2. Herhangi ek iş mantığı kontrollerini gerçekleştirmek (ör. kullanıcının doğru departmana ait olduğundan veya belirli bir claim'e sahip olduğundan emin olmak).
  3. Kontroller başarılı olursa, Doconut'un görüntüleyicisini çağırarak istenen belge sayfası için bir güvenli akış oluşturun. Akış mevcut HTTP isteğine bağlıdır, bu yüzden oturum sona erdiğinde yeniden kullanılamaz.

Yorum İzinleri

Doconut'un Annotation Plugin'i sayfa bazında çalışır. Kullanıcının hakları onaylandıktan sonra, sunucu istenen sayfa için bir AnnotationManager oluşturur. Kullanıcı uygun claim'e (ör. CanAnnotate) sahip değilse, sunucu yalnızca okunabilir bir görünüm döndürür ve yorum değişikliklerini gönderme girişimi 403 yanıtı ile reddedilir. Bu, yalnızca yetkili personelin inceleme yorumlarını ekleyip değiştirebilmesini sağlar.


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 seçtiğiniz depolama sağlayıcısı (Azure Blob, SQL Transparent Data Encryption vb.) kullanılarak dinlenirken şifrelenir. Görüntüleyici yalnızca rasterleştirilmiş sayfaları alır, asla orijinal dosyayı almaz, bu yüzden istemci kaynağa doğrudan erişemez.

Yorumlar Aracılığıyla Görsel İşaretlemeler (Filigranlar)

Renderleme sunucuda gerçekleştirildiği için, sayfa tarayıcıya gönderilmeden önce izleyicinin adı, e‑posta ve zaman damgasını içeren yarı şeffaf bir metin katmanı gibi kullanıcı‑özel bir yorum ekleyebilirsiniz. Bu yaklaşım ekran görüntüsü almayı caydırır ve bir sızıntı gerçekleşirse adli kanıt sağlar; ayrıca Doconut'un doğrulanmış yorum 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ı şart koşar. Doconut'un Controlled Printing özelliği, yazdırma komutunu sunucuda yakalamanıza, kullanıcının rolünü doğrulamanıza ve isteğe bağlı olarak oluşturulan PDF'ye “Yazdırıldı” notu eklemenize olanak tanır. Yazdırma işi sunucu‑tarafında oluşturulur, bu yüzden istemci işaretsiz bir belge sürümü almaz.


5. OCR ve Yorum İçin Denetim, Günlükleme ve Uyumluluk

Değiştirilemez Denetim İzleri

Her yorum işlemi—ekleme, değiştirme, silme—değiştirilemez bir günlükte (ör. Azure Append Blob veya değiştirilemez bir veritabanı tablosu) saklanabilecek bir XML yükü üretir. Doconut'un GetAnnotationXml() yöntemi, her değişiklikten sonra tam durumu döndürür ve XML'i zaman damgası ve kullanıcı tanımlayıcısı ile kalıcı olarak saklamanızı sağlar. İstek‑seviyesi güvenlik kontrolleriyle birleştirildiğinde, kim neyi, ne zaman ve nasıl etkileştiğini yeniden oluşturabilirsiniz.

Güvenli OCR İşleme

OCR, aranabilir PDF'ler için gereklidir, ancak bir risk de getirir: OCR motoru istemciye istemeden ham metin açığa çıkarabilir. Doconut OCR'ı sunucu‑tarafında çalıştırır ve yalnızca aranabilir indeks verilerini döndürür. Orijinal taranmış görüntü şifreli kalır ve aranabilir metin, görüntüleyicinin geri kalanıyla aynı istek‑yaşam döngüsü kurallarına uyan yalnızca okunabilir bir önbellekte bulunur.

Düzenleyici Uyum

Tüm işlemler yerinde (veya kontrol ettiğiniz özel bir bulutta) gerçekleştiği için, Doconut, korunan verilerin üçüncü‑taraf SaaS uç noktalarına gönderilmesini yasaklayan GDPR, HIPAA ve PCI‑DSS gereksinimlerini karşılamanıza yardımcı olur. Ürünün mimarisi ayrıca denetime hazır günlükleri destekler, bu da uyumluluk raporlarını çok daha az zahmetli hale getirir.


6. Doconut Güvenlik Gereksinimlerini Rekabet Avantajına Nasıl Dönüştürüyor

Güvenlik GereksinimiDoconut Özelliğiİş Yararları
Sıfır veri sızdırmaSunucu‑tarafı dönüşüm ve akış‑tabanlı renderlemeGizli dosyalar asla güvenilir ortamdan çıkmaz.
XSS korumasıTemizlenmiş HTML çıktısı, belgelere ait istemci‑tarafı script çalıştırması yokEk kodlama çabası olmadan saldırı yüzeyini azaltır.
Granüler izin uygulamasıClaim‑bilinçli ara katman, sayfa‑bazlı yorum yöneticisiMevcut RBAC modelleriyle uyum sağlar ve yönetim yükünü azaltır.
Kontrollü yazdırma ve görsel işaretlemelerYorum‑tabanlı katmanlarla yerleşik yazdırma iş akışıVeri sızıntısını önler ve adli izlenebilirlik sağlar.
DenetlenebilirlikGetAnnotationXml(), istek‑kapsamlı akışlar, sunucu günlükleriFinans, hukuk ve sağlık için uyumluluk raporlamasını basitleştirir.
Ölçeklenebilir OCRSunucu‑tarafı OCR eklentisi, aranabilir indeks JSON olarak döndürülürHam metni açığa çıkarmadan milyonlarca sayfada anlık arama sağlar.
Çapraz‑platform teslimatıHTML5 görüntüleyici herhangi bir tarayıcıda çalışır, React, Angular, Vue veya Blazor ile entegre olurMasaüstü, mobil ve kiosk dağıtımları arasında yatırımınızı geleceğe hazırlar.

Ağır işleri sunucuda hallederek, Doconut size iş mantığına odaklanma imkanı verir—ister çok aşamalı onay iş akışıyla bir sözleşmeyi yönlendirin, ister mühendislik çizimlerini güvenli bir portalda sunun. Aynı kod tabanı .NET 6, .NET Core ve en yeni .NET 8'de çalışır ve size satıcı kilitlemesiz bir deneyim sunar.

Kendiniz deneyin – Doconut, tüm görüntüleyici, yorum, OCR ve dönüşüm eklentilerini içeren bir ücretsiz deneme sunar. Dakikalar içinde bir örnek 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ış‑tabanlı teslimat eski‑bağlantı saldırılarını ortadan kaldırır ve ham dosyaları güvenilir çevre içinde tutar.
  • Merkezi politika uygulaması (şifreleme, kırpma, yorum‑tabanlı işaretlemeler) verinin istemciye ulaşmasından önce gerçekleşir.
  • İnce granüler claim kontrolleri, belge açılmadan veya yorum etkinleştirilmeden önce kurumsal RBAC politikalarına uyumu sağlar.
  • Kontrollü yazdırma ve yorum‑tabanlı katmanlar veri sızıntısını önler ve adli kanıt sağlar.
  • GetAnnotationXml()'den oluşturulan değiştirilemez denetim günlükleri düzenleyici raporlamayı basitleştirir.
  • HTML5 görüntüleyici herhangi bir modern tarayıcıda çalışır, React, Angular, Vue veya Blazor ön‑uçları için idealdir.
  • Doconut'un ücretsiz denemesi güvenlik, performans ve geliştirici deneyimini taahhüt etmeden önce doğrulamanızı sağlar.

Sık Sorulan Sorular

S1: Doconut, Word veya Excel dönüşümü için sunucuda Microsoft Office yüklü olmasını gerektiriyor mu?
C: Hayır. Doconut'un Converter Plugin'i, yerel bir Office kurulumuna ihtiyaç duymadan tüm Office‑to‑PDF ve diğer format dönüşümlerini sunucuda gerçekleştirir.

S2: Doconut'u hava boşluğu (air‑gapped) bir ortamda kullanabilir miyim?
C: Evet. Doconut belgeleri tamamen yerinde işlediği ve harici SaaS hizmetlerine bağımlı olmadığı için izole ağlarda çalışır.

S3: Doconut büyük dosyaları nasıl yönetir?
C: Doconut, belge sayfalarını talep üzerine akışlar; yalnızca gerekli bölümleri belleğe yükler. Bu sayfalama yaklaşımı arka plan işleri ve büyük ölçekli iş yükleri için iyidir.

S4: Görüntüleyici engelli kullanıcılar için erişilebilir mi?
C: HTML5 görüntüleyici standart erişilebilirlik uygulamalarını izler ve WCAG yönergelerine uymak için ARIA öznitelikleriyle genişletilebilir.

S5: Ücretsiz denemeyi nereden alabilirim?
C: Resmi Doconut sitesini (https://doconut.com) ziyaret edin ve bir deneme lisansı isteyin. Deneme, tüm temel eklentileri—görüntüleyici, yorum, OCR ve dönüşüm—içerir.

#document viewer#security#.NET#enterprise architecture#OCR#annotation#belge görüntüleyici#güvenlik#kurumsal mimari#yorum