埋め込みドキュメントビューイングは、古いブラウザ拡張機能やローカルにインストールされたデスクトッププログラムに委ねるのではなく、アプリケーションの一部として感じられるべきです。Windows ベースの ASP.NET および .NET プロジェクト向けに、Doconut はビジネス文書をウェブアプリケーション内でレンダリングできるドキュメントビューア SDK を提供します。
このガイドでは、未公開の Doconut ソースコードを提示することなく、プラグイン不要のビューイング体験のアーキテクチャを説明します。

「プラグイン不要」とは何か
プラグイン不要のビューアは、ユーザーに ActiveX、Flash、Silverlight、またはカスタムブラウザ拡張機能などの技術をインストールさせずに文書を開くことができます。
これにより、以下のような摩擦が減少します。
- ユーザーはローカルインストールの権限を必要としません。
- IT チームはクライアント側プラグインの配布や更新を行う必要がなくなります。
- アプリケーションは閲覧ワークフローを自らのインターフェイス内に保持できます。
- レガシープラグインへの依存がファイルを開く条件になることはありません。
プラグイン不要は依存関係がないことを意味するわけではありません。サーバー側には正しい SDK、ランタイム、フォント、ストレージアクセス、設定、ライセンスが必要です。また、認証、認可、保持、監視といった責任はアプリケーション側に残ります。
サーバーサイドでのドキュメントレンダリングが有効な理由
ビジネス文書は通常のウェブコンテンツよりも複雑です。Office ファイル、CAD 図面、メールメッセージ、高解像度画像はそれぞれ形式に応じた処理が必要です。
サーバーサイドの .NET コンポーネントがこの処理を担い、ウェブアプリケーションは結果として得られたビューイング体験を提供します。これにより、各ユーザーが元の作成ソフトウェアをインストールする必要がなくなります。
Doconut はこの役割のために設計されています。現在の製品情報では、PDF、Office 文書、CAD 図面、メールファイル、画像のサポートが記載されています。必要なフォーマットと機能は、Doconut ビューアページ でご確認ください。
ビューイングワークフローの設計
安全なドキュメント要求は通常、以下の手順で進行します。
- ユーザーがアプリケーション識別子を使ってドキュメントを選択します。
- ASP.NET が要求を認証します。
- サーバーがその特定ドキュメントへのアクセス権を検証します。
- アプリケーションが保護されたストレージ位置を解決します。
- サポートされている統合方法でドキュメントをビューイング層に渡します。
- アプリケーションが結果を記録し、一時リソースを解放します。
クライアント側がストレージ認証情報や無制限のサーバーパス、または認可されたセッションが必要としない余分なドキュメント情報を受け取ってはなりません。
標準的な ASP.NET セキュリティ境界の使用
ビューイングページは他の機密リソースと同様に保護すべきです。
標準的な .NET メカニズムには次が含まれます。
- 認証ミドルウェア
[Authorize]属性- 認可ポリシーとクレーム
- リソースベースの認可
- ストレージおよびビューイングサービス向けの依存性注入
- 敏感データフィルタリング付き構造化ロギング
認可はサーバー側で評価される必要があります。ツールバーのアクションやルートを UI で隠すだけでは、決意の固いクライアントが直接リクエストすることを防げません。
SDK へのアクセスはアプリケーションサービスで隠蔽する
ビューア固有の呼び出しをコントローラやページに散在させないでください。専用のアプリケーションサービスを設けることで、以下が実現できます。
- 認可されたドキュメント識別子の解決
- 制御された
Streamのオープン - インストール済み SDK バージョン向け設定の適用
- ファイルとストリームリソースの解放
- 技術的失敗を安全なアプリケーションエラーに変換
- 計測とサニタイズされた診断情報の記録
この境界により、テストが容易になり、将来の SDK アップグレードの影響が軽減されます。
公式 Doconut ダウンロードおよびドキュメント リソース を利用してパッケージのインストールとバージョン固有の API ガイダンスを取得してください。
使いやすいビューアホストの構築
アプリケーションが所有するビューアコンテナは、実際のドキュメントを表示できる十分なスペースを確保すべきです。狭いカードや固定デスクトップ幅は避けましょう。
.viewer-workspace {
display: grid;
grid-template-rows: auto minmax(0, 1fr);
width: 100%;
min-height: 36rem;
height: calc(100dvh - 4rem);
}
.viewer-host {
min-width: 0;
min-height: 0;
overflow: hidden;
}
これはページ全体の標準 CSS であり、Doconut の設定ではありません。未公開の内部セレクタを対象にしたり、SDK オプションを独自に作成したりしないでください。
ページには以下も提供すべきです。
- 明確なローディング状態
- 安全なエラーメッセージ
- 視認できるドキュメントタイトル
- 親ワークフローへの戻りリンク
- アクセシブルなアプリケーションコントロール
- 幅広いスプレッドシートや詳細な図面のための十分な余白
レンダリング前のドキュメント検証
ユーザーがファイルをアップロードする場合、次を確認してください。
- ファイルサイズ
- 拡張子とファイルシグネチャ
- サポートされている形式
- パスワードまたは暗号化要件
- ビジネス固有の制限事項
- サーバー生成のストレージ名
元のファイル名から直接サーバーパスを構築しないでください。安全なアプリケーション識別子を保存し、認可されたサーバー側サービスを通じて解決します。
Windows サーバーの準備
レンダリング動作はサーバー環境に依存することがあります。次を確認してください。
- サポートされている Windows と .NET のバージョン
- 必要なフォント
- 一時ストレージの場所と権限
- 利用可能な CPU、メモリ、ディスク容量
- 最大ドキュメントサイズと同時セッション数
- ライセンス設定
- クリーンアップ手順
本番環境に近い環境で代表的な顧客ドキュメントをテストしてください。
セキュリティとプライバシーのチェックリスト
リリース前に確認すべき項目:
- 必要に応じてビューイング要求を認証する。
- 特定ドキュメントに対するユーザーの認可を行う。
- ストレージパスと認証情報はサーバー側に保持する。
- 一時ファイルの権限を制限する。
- オリジナル、 一時データ、エクスポートの保持期間を定義する。
- ユーザーに表示されるエラーをサニタイズする。
- ログからドキュメント内容やシークレットを除外する。
- アップロードと同時実行の上限を適用する。
- SDK とアプリケーションの依存関係を常に最新に保つ。
コンプライアンスに関する主張は、単一の UI コンポーネントではなく、展開されたシステム全体と組織のプロセスを反映すべきです。
ハッピーパス以外のテスト
テストライブラリには次を含めてください。
- 複数ページの PDF
- 大容量スプレッドシート
- 詳細な CAD 図面
- 珍しいフォントを使用したプレゼンテーション
- 添付ファイル付きメールファイル
- 大型画像
- 破損または未サポートのファイル
- 認可されていないリクエスト
- 同時ビューイングセッション
- 中断されたリクエストやアプリケーション再起動
失敗時にサーバーパス、スタックトレース、ストレージ URL が漏れないことを確認してください。
Doconut の位置付け
Doconut は .NET Web アプリケーション内で埋め込みドキュメントビューイング機能を提供します。アプリケーション側はセキュリティ、ストレージ、ワークフロー、レスポンシブレイアウト、運用コントロールを担当します。
この分離により、レガシープラグイン依存のワークフローを置き換えることができ、ドキュメント処理が楽になるわけでも、責任がなくなるわけでもないことを前提にできます。
検証済みの Doconut .NET ドキュメントビューア SDK を確認し、選択したバージョンに合わせた手順は 公式ダウンロードページ で取得してください。
結論
プラグイン不要のドキュメント体験はインストールの摩擦を減らし、ユーザーをアプリケーション内に留めます。サーバー認可のドキュメントフロー上に構築し、SDK へのアクセスを分離し、広々としたビューアホストを提供し、本番に近い負荷下で実ファイルをテストしてください。
Windows ベースの ASP.NET と .NET アプリケーションにおいて、Doconut はドキュメントビューイング層を提供しつつ、チームはアプリケーションとドキュメントのライフサイクル管理を引き続きコントロールできます。