Odstranění tlačítka pro stažení může podpořit pracovní postup pouze pro prohlížení, ale neznamená, že je viditelný dokument nemožné zkopírovat. Bezpečná implementace vyžaduje serverovou autorizaci, chráněné úložiště, krátkodobé relace, pečlivé logování a upřímné pochopení toho, co omezení uživatelského rozhraní dokážou dosáhnout.
Doconut poskytuje vložený .NET prohlížeč dokumentů pro podnikové aplikace. Tento tutoriál vysvětluje související bezpečnostní návrh, aniž by publikoval odhadované konfigurační vlastnosti nebo jiný nedokumentovaný zdrojový kód Doconut.

1. Definujte, co znamená „pouze pro prohlížení“
Začněte s přesnou politikou. Různé týmy mohou používat „pouze pro prohlížení“ k označení:
- Nenabízet originální soubor ke stažení.
- Nezobrazovat akci exportu.
- Neumožňovat tisk.
- Povolit prohlížení pouze během autorizované relace.
- Zabránit uživatelům v přímém přístupu k úložnému umístění.
- Přidávat auditní záznamy při otevření dokumentu.
Jedná se o samostatné kontroly. Rozhodněte, které jsou vyžadovány, a ověřte, že vámi vybraný produkt Doconut, pluginy a licence podporují požadované chování prohlížeče.
Nikdy neslibujte, že viditelný dokument nelze zachytit. Screenshoty, kamery, nástroje pro přístupnost, možnosti prohlížeče a autorizovaný přístup k zobrazovaným pixelům činí absolutní zamezení nereálným.
2. Chraňte originální soubor
Originální dokument by měl zůstat v chráněném úložišti na serveru.
Použijte:
- Identifikátory dokumentů generované serverem
- Omezená oprávnění úložiště
- Šifrování v klidu, kde je vyžadováno
- Dokumentovaná politika uchovávání
- Samostatná oprávnění pro nahrávání, prohlížení, export a správu
Neodesílejte klientovi přihlašovací údaje k úložišti, neomezené cesty k souborům ani trvalé veřejné URL.
3. Autorizujte každý požadavek na dokument
V ASP.NET Core chraňte cestu prohlížeče pomocí standardních mechanismů autentizace a autorizace.
Server by měl ověřit:
- Uživatel je autentizován.
- Dokument existuje.
- Uživatel má oprávnění prohlížet konkrétní dokument.
- Požadovaná akce je povolena pro roli uživatele a aktuální stav pracovního postupu.
Atribut [Authorize] může chránit cestu, zatímco zásady, nároky nebo autorizace založená na zdrojích mohou rozhodovat o konkrétním dokumentu.
Autorizace musí také pokrýt jakýkoli koncový bod, který vrací data dokumentu, stránky, exporty, anotace nebo výstup tisku. Zabezpečení pouze úvodní stránky ponechává alternativní cesty otevřené.
4. Oddělte oprávnění pro prohlížení a stažení
Modelujte oprávnění explicitně, místo aby byly odvozeny z skrytého tlačítka.
Například:
CanViewDocumentCanDownloadOriginalCanExportDocumentCanPrintDocumentCanManageDocument
Tyto názvy popisují zásady aplikace, nikoli API Doconut. Vaše autorizační vrstva by je měla vyhodnocovat na serveru před provedením odpovídající akce.
Administrátor může mít oprávnění ke stažení, zatímco jiný autentizovaný uživatel má pouze oprávnění k prohlížení. Oba uživatelé mohou sdílet stejnou stránku aplikace a přitom mít různé autorizované schopnosti.
5. Nakonfigurujte prohlížeč podle oficiální dokumentace
Používejte pouze názvy konfigurací a kroky integrace dokumentované pro přesnou verzi Doconut nainstalovanou ve vaší aplikaci.
Ověřená Stránka prohlížeče Doconut poskytuje aktuální informace o produktu. Stránka pro stažení a dokumentaci Doconut poskytuje instalační zdroje a příklady specifické pro verzi.
Pokud nainstalovaný produkt poskytuje podporované nastavení pro skrytí nebo zakázání akce stažení:
- Použijte jej podle oficiální dokumentace.
- Považujte jej za kontrolu uživatelského rozhraní a pracovního postupu.
- Udržujte související serverový koncový bod chráněný.
- Otestujte, že neautorizovaní uživatelé nemohou obejít přímým požadavkem.
Nekopírujte odhadované konfigurační vlastnosti z nesouvisejícího článku a nepředpokládejte, že jsou podporovány.
6. Umístěte integraci prohlížeče za službu
Vyhrazená aplikační služba může:
- Vyřešit autorizovaný dokument
- Otevřít jej prostřednictvím schválené abstrakce úložiště
- Použít podporovanou konfiguraci prohlížeče
- Uvolnit streamy a dočasné zdroje
- Zaznamenat očištěné auditní události
- Vrátit bezpečné chyby řadiči
Tím se udržují podrobnosti specifické pro SDK mimo autorizační zásady a prezentační kód.
Standardní .NET typy jako Stream, FileStream, CancellationToken a služby injektované závislostmi mohou tvořit hranice aplikace. Řiďte se dokumentací Doconut pro volání do SDK.
7. Použijte obranu v hloubce
Pracovní postup pouze pro prohlížení může zahrnovat:
- Autentizaci a autorizaci na úrovni zdroje
- Izolaci sítě a úložiště
- Krátkou dobu trvání relace
- Omezené cesty pro export a tisk
- Vodoznakování, pokud je podporováno a vhodné
- Auditní události pro přístup k dokumentu
- Limity rychlosti a řízení souběžnosti
- Jasná pravidla uchovávání a čištění
- Bezpečnostní monitorování neobvyklých přístupových vzorců
Žádná jednotlivá kontrola není dostačující. Skryté tlačítko bez serverové ochrany je obzvláště snadno obejitelné.
8. Logujte přístup bez úniku dat
Užitečné auditní pole zahrnují:
- Identifikátor dokumentu v aplikaci
- Identifikátor autorizovaného uživatele
- Časové razítko
- Požadovaná akce
- Výsledek
- Identifikátor korelace
- Očištěný důvod odmítnutí nebo selhání
Vyhněte se logování:
- Obsahu dokumentu
- Přihlašovacích údajů k úložišti
- Přístupových tokenů
- Citlivých URL
- Úplných cest na serveru
- Zbytečných osobních informací
Chraňte auditní logy podle jejich citlivosti a požadavků na uchovávání.
9. Testujte pokusy obejít uživatelské rozhraní
Nezastavujte se po potvrzení, že tlačítko na panelu nástrojů chybí.
Testujte, zda uživatel s oprávněním pouze pro prohlížení může:
- Žádat přímo o cestu k originálnímu souboru
- Volat cestu pro export nebo tisk
- Změnit identifikátor dokumentu
- Znovu použít vypršenou relaci
- Přistupovat k dokumentu jiného uživatele
- Objevit URL úložiště v markupu nebo síťových odpovědích
- Vyvolat podrobné chyby, které odhalí interní cesty
- Udržet přístup po odebrání oprávnění
Zahrňte jak automatizované autorizační testy, tak manuální testování v prohlížeči.
10. Nastavte přesná očekávání uživatelů
Vysvětlete, co politika dělá:
- Omezuje workflow stahování nebo exportu poskytované aplikací.
- Omezuje přístup na autorizované uživatele.
- Může zaznamenávat události prohlížení.
- Udržuje originální soubor za serverovými kontrolami.
Také vysvětlete, co nemůže zaručit:
- Nemůže zabránit fotografování nebo screenshotům ve všech prostředích.
- Nemůže zrušit informace, které již byly viděny a zapamatovány.
- Nenahrazuje smluvní, organizační ani koncové bezpečnostní kontroly.
Toto rozlišení činí produkt důvěryhodnějším a pomáhá zúčastněným stranám vybrat vhodné kontroly pro vysoce citlivý materiál.
Kontrolní seznam ověření
- Prohlížení a stahování používají oddělená serverová oprávnění.
- Každý požadavek na dokument provádí autorizaci na úrovni zdroje.
- Originální soubor nemá trvalou veřejnou URL.
- Nastavení prohlížeče pocházejí z dokumentace pro nainstalovanou verzi Doconut.
- Skryté akce mají chráněné serverové koncové body.
- Dočasná data mají definovaný proces čištění.
- Auditní logy neobsahují obsah dokumentu ani tajemství.
- Neautorizované přímé požadavky jsou pokryty testy.
- Chybové odpovědi neodhalují interní podrobnosti úložiště.
- Produktová kopie neuvádí absolutní zamezení kopírování.
Kde Doconut zapadá
Doconut poskytuje vloženou vrstvu prohlížení v .NET aplikaci. Vaše aplikace zůstává zodpovědná za identitu, autorizaci, oprávnění, úložiště, uchovávání, audit a pravdivost slibu „pouze pro prohlížení“.
Zhodnoťte SDK prohlížeče dokumentů Doconut .NET s vašimi bezpečnostními požadavky a reprezentativními dokumenty. Použijte oficiální zdroje pro podporovanou konfiguraci místo spoléhaní se na odhadovaný zdrojový kód.
Závěr
Pracovní postup pro dokumenty pouze pro prohlížení je návrh obrany v hloubce, nikoli Boolean příznak. Chraňte originální soubor, autorizujte každý požadavek, oddělte oprávnění pro prohlížení a stažení, ověřte podporovaná nastavení prohlížeče, auditujte přístup a testujte přímé pokusy obejít rozhraní.
S těmito kontrolami na místě může Doconut poskytovat vložený dokumentový zážitek, zatímco vaše ASP.NET aplikace vynucuje bezpečnostní politiku kolem něj.