예—몇 분만에 보안된 플러그인 없는 온라인 파일 뷰어를 모든 ASP.NET Core, MVC 또는 WebForms 애플리케이션에 삽입할 수 있으며, Doconut App이 모든 복잡한 작업을 처리합니다.
계약서, 도면 또는 디자인 자산을 제공하는 기업은 기업 보안 정책을 준수하고 사용자가 레거시 브라우저 플러그인을 설치하도록 강요하지 않는 뷰어가 필요합니다. Doconut 은 브라우저 기반 PDF, Office, CAD, 이메일 및 이미지 워크플로를 위한 .NET 문서 뷰어 SDK를 제공합니다. 이 게시물은 버전별 샘플 코드를 사용하지 않고 통합 결정을 설명합니다.

1. .NET 웹 앱에서 보안 및 플러그인 없는 렌더링이 중요한 이유
현대 기업은 모든 문서를 잠재적인 데이터 유출 위험으로 간주합니다. ActiveX, Flash 또는 네이티브 클라이언트에 의존하는 뷰어를 삽입하면 다음과 같은 세 가지 위험을 물려받게 됩니다:
| 위험 | .NET 애플리케이션에 미치는 영향 | Doconut App이 이를 제거하는 방법 |
|---|---|---|
| 플러그인 의존성 | 사용자는 브라우저 플러그인을 설치하거나 활성화해야 하며, 이로 인해 지원 티켓과 컴플라이언스 문제가 발생합니다. | Doconut은 완전히 HTML5/Canvas에서 실행되며 플러그인 없음을 요구합니다. |
| 암호화되지 않은 전송 | 파일이 HTTP를 통해 전송되거나 평문으로 저장되어 GDPR, HIPAA 또는 내부 정책을 위반합니다. | 모든 업로드는 SSL을 통해 진행되며 AES‑256 암호화된 상태로 저장됩니다. |
| 제어되지 않은 수명 주기 | 파일이 서버에 남아 침해 표면이 확대될 수 있습니다. | Doconut은 자동으로 보기 후 파일 삭제를 수행하여 짧은 보존 기간을 보장합니다. |
뷰어가 Doconut의 보안 렌더링 서비스와 통신하는 JavaScript 컴포넌트 형태로 제공되기 때문에 .NET 스택을 깔끔하게 유지할 수 있습니다—추가 네이티브 라이브러리, 서드파티 바이너리, 추가 컴플라이언스 감사가 필요 없습니다.
2. .NET 프로젝트 준비
프로젝트에 선택한 Doconut 버전에 맞는 패키지, 문서 및 예제를 사용하십시오. 공식 Doconut 다운로드 페이지 가 신뢰할 수 있는 시작점입니다.
통합 전에 대상 .NET 런타임을 확인하고, 패키지 버전을 기록하며, 라이선스 구성을 소스 컨트롤 외부에 보관하고, 대표 문서로 테스트를 시작하십시오. ASP.NET Core, MVC, WebForms는 각각 다른 애플리케이션 수명 주기를 가지므로 동일하게 취급하면 안 됩니다.
3. 보안 업로드 엔드포인트 구축 – AES‑256, SSL 및 자동 삭제
뷰어는 파일 시스템에 직접 접근하지 않습니다. 대신 임시, 암호화된 저장 위치에 문서를 업로드하고 Doconut이 필요할 때 읽어옵니다. 아래는 ASP.NET Core에 필요한 단계의 고수준 설명이며, MVC와 WebForms에도 동일하게 적용됩니다.
서버 측 워크플로
- 업로드된 파일 수락 – 표준
IFormFile(WebForms에서는HttpPostedFile)을 사용해 클라이언트로부터 문서를 받습니다. - AES‑256으로 파일 암호화 – 스트림을 영구 저장하기 전에
System.Security.Cryptography.Aes같은 검증된 라이브러리를 사용해 암호화합니다. 암호화된 블롭은 Azure Blob Storage(서버‑사이드 암호화 활성화) 또는 SSE‑AES256가 적용된 S3 버킷 등 안전한 위치에 보관합니다. - 짧은 수명의 서명된 URL 생성 – 몇 분(예: 5분) 동안만 유효한 URL을 만듭니다. URL은 HTTPS이어야 하며 Doconut이 검증할 수 있는 암호 토큰을 포함해야 합니다. 대부분의 클라우드 스토리지 제공자는 이 요구에 맞는 “프리‑사인드 URL” 기능을 제공합니다.
- 서명된 URL을 클라이언트에 반환 – URL을 포함한 JSON 응답을 전송합니다. 클라이언트는 이 URL을 Doconut 뷰어에 전달합니다.
- 자동 삭제 스케줄링 – 서명된 URL이 만료된 후, 백그라운드 작업(Hangfire, Azure Functions 등)을 통해 암호화된 블롭을 삭제하여 파일이 서버에 남지 않도록 보장합니다.
MVC / WebForms 등가물
- MVC – 동일한 로직을 일반 컨트롤러 액션에 넣고
JsonResult를 반환합니다. - WebForms –
.ashx핸들러 또는 페이지 메서드를 구현해 동일한 단계를 수행합니다:Request.Files[0]수신 → 암호화 → 프리‑사인드 URL 생성 → JSON 응답 작성.
유일한 차이점은 라우팅 구문이며, 보안 워크플로는 동일합니다.
4. 설치된 SDK를 통해 문서 렌더링
서버에서 문서 접근을 유지하고 파일이나 스트림을 처리하기 전에 권한을 확인하십시오. 정확한 렌더링 및 UI 초기화 순서는 버전마다 다르므로, 검증되지 않은 전역 JavaScript API를 복사하기보다 설치된 빌드와 함께 제공되는 공식 문서를 따르세요.
왜 모든 .NET 환경에서 작동하는가
- ASP.NET Core Razor – 스크립트가 업로드 폼을 호스팅하는 동일한 뷰에 존재하므로 흐름이 매끄럽습니다.
- MVC –
@section Scripts로 동일한 스니펫을 삽입하고, 컨트롤러가 반환한 JSON을 MVC의$.ajax가 소비합니다. - WebForms – 업로드가 완료된 후
ClientScript.RegisterStartupScript로 스크립트를 등록하고, 동일한 방식으로launchViewer를 호출합니다.
Doconut은 서명된 URL에서 직접 문서를 스트리밍하므로 업로드 단계 이후 서버가 파일을 다시 다루지 않습니다. 뷰어는 PDF, Word, CAD 도면 및 제품 사양에 명시된 모든 형식을 추가 서버‑사이드 변환 없이 렌더링합니다.
5. 브랜드에 맞게 뷰어 커스터마이징 – 온라인 파일 뷰어 세밀 조정
기업은 뷰어가 포털의 네이티브 일부처럼 보이길 원합니다. Doconut App의 완전 커스터마이즈 가능한 UI를 활용하면 다음을 할 수 있습니다:
| 커스터마이징 | .NET에서 적용 방법 |
|---|---|
| 툴바 레이아웃 | toolbar: false 를 전달하고 zoomIn(), print() 와 같은 뷰어 JavaScript API를 호출하는 자체 버튼을 구축합니다. |
| 색상 스키마 | theme: "dark" 를 설정하거나 기본 클래스를 재정의하는 커스텀 CSS 파일을 제공하십시오. |
| 언어 및 접근성 | Doconut은 컨테이너의 lang 속성을 존중하며, accessibility 옵션을 통해 ARIA 라벨을 주입할 수 있습니다. |
| 이벤트 훅 | onPageChange, onError, onDownload 와 같은 콜백을 사용해 기존 텔레메트리 파이프라인에 사용량 메트릭을 기록할 수 있습니다. |
이러한 모든 훅은 이전 섹션에 표시된 동일한 JavaScript 객체에서 설정됩니다. 뷰어가 완전히 클라이언트에 존재하므로 추가 서버 부하가 없습니다—.NET 백엔드는 인증, 암호화 및 비즈니스 로직에 집중합니다.
6. 성능 및 확장성 – 빠른 사용자 경험 유지
고 트래픽 포털에 뷰어를 삽입하면 두 가지 실용적인 우려가 발생합니다: 로드 시간과 동시 렌더링. Doconut App은 기본적으로 두 문제를 해결하지만, 몇 가지 .NET‑특화 팁으로 성능을 더욱 강화할 수 있습니다.
| 우려 사항 | Doconut의 기본 제공 장점 | 추가 .NET 팁 |
|---|---|---|
| 초기 다운로드 | 뷰어 스크립트는 압축 시 약 150 KB에 불과합니다. | 정적 파일 압축 (app.UseResponseCompression()) 및 캐싱 (Cache‑Control: public, max‑age=31536000) 을 활성화합니다. |
| 파일 스트리밍 | Doconut은 필요한 페이지만 스트리밍하며 HTTP 범위 요청을 사용합니다. | 암호화된 블롭을 지역 CDN (Azure Front Door, Amazon CloudFront) 에 저장해 지연 시간을 감소시킵니다. |
| 동시 사용자 | 렌더링은 클라이언트에서 이루어지고, 서버는 뷰당 한 번만 암호화된 파일을 제공합니다. | 스파이크 방지를 위해 업로드 엔드포인트 를 IApplicationRateLimiter 로 제한합니다. |
| 메모리 발자국 | 서버‑사이드 PDF 변환 라이브러리가 없으므로 ASP.NET 프로세스가 가볍게 유지됩니다. | 이미 무거운 백그라운드 작업 큐가 있다면 업로드 서비스를 별도 마이크로서비스 로 실행합니다. |
이 가이드라인을 따르면 기존 .NET 웹 계층을 확장하지 않고도 수천 명의 동시 뷰어를 지원할 수 있습니다.
핵심 요약
- Doconut App은 플러그인 없는, 100 % 보안 뷰어를 제공하며 ASP.NET Core, MVC, WebForms와 모두 호환됩니다.
- 업로드는 SSL‑only 로 진행되고 AES‑256 암호화 로 저장되며, 서명된 URL이 만료되면 자동으로 삭제됩니다.
- 통합에 필요한 것은 CDN 스크립트,
<div>컨테이너, 서명된 URL을 반환하는 작은 서버‑사이드 엔드포인트뿐입니다. - 뷰어는 PDF, Office, CAD 및 50개 이상의 이미지 포맷을 지원하며 서버‑사이드 변환이 필요 없습니다.
- UI는 완전 커스터마이즈 가능해 기업 브랜딩에 맞출 수 있으며, CAD 파일을 위한 확대/측정/레이어 도구도 내장되어 있습니다.
- 성능은 클라이언트 측에서 처리되므로 .NET 개발자는 정적 파일 압축 및 선택적 CDN 캐싱만 신경 쓰면 됩니다.
- 보안 업로드부터 브라우저 내 렌더링까지 전체 워크플로가 기존 .NET 인증·인가 파이프라인에 깔끔히 통합됩니다.
일반 질문
Q1: Doconut을 사용하려면 NuGet 패키지를 설치해야 하나요?
A: 아닙니다. 뷰어는 Doconut의 CDN에서 제공되는 클라이언트‑사이드 JavaScript 번들 형태로 전달됩니다. 서버에서는 파일 업로드와 암호화를 위한 일반적인 ASP.NET Core 미들웨어만 있으면 충분합니다(이미 사용 중일 가능성이 높습니다).
Q2: Doconut은 파일을 보기 후 어떻게 삭제를 보장하나요?
A: Doconut은 일반적으로 5분 정도로 설정되는 짧은 수명의 서명된 URL 을 생성합니다. URL이 만료되면 여러분(또는 백그라운드 정리 작업)이 암호화된 블롭을 삭제합니다. 이를 통해 문서가 필요 이상으로 보관되지 않으며, 엄격한 데이터 보존 정책을 만족합니다.
Q3: 뷰어를 사용해 문서를 인쇄하거나 내보낼 수 있나요?
A: 예. Doconut의 내장 툴바에는 원본 파일의 품질과 레이아웃을 그대로 유지하는 인쇄 및 내보내기 옵션이 포함되어 있습니다.
보안하고 플러그인 없는 문서 뷰어를 .NET 애플리케이션에 삽입할 준비가 되셨나요? 오늘 바로 Doconut App을 시작해 PDF, Office, CAD 및 수많은 다른 포맷을 안전하고 즉시 제공하십시오.