Collabora Online CODEでファイルのエクスポートオプションを制限する方法

Collabora Online CODE でファイルのエクスポートを制限するには、WOPI ホストが応答DisableExport: trueでCheckFileInfo対象となるファイルとユーザーを返すようにします。HideExportOption: trueまた、「ダウンロード」コマンドがエディタのメニューから削除されるようにします。最初のプロパティはバックエンドで Collabora のエクスポート機能を無効にし、2 番目のプロパティは表示を制御します。表示フラグだけを設定してもアクセス制御にはなりません。

CODE はドキュメントエディタです。標準的な統合では、Nextcloud、ownCloud、またはカスタムアプリケーションなどの別の WOPI ホストが元のファイルを保存し、Collabora にファイルメタデータと権限を提供します。そのため、エクスポート権限は通常、Collabora コンテナのユニバーサルスイッチとしてではなく、ホスト統合で構成されますcoolwsd.xml。

シーケンス図は、Collabora OnlineがWOPIホストからCheckFileInfoを要求し、エクスポート権限フィールドを受信する様子を示しています。
Collabora OnlineはWOPIホストにファイル情報を要求します。ホストからの応答には、そのドキュメントセッションに対するエクスポート制限が含まれる場合があります。

アクションに一致するコントロールを選択してください

WOPIの所有物または管理その機能いつ使うべきか
HideExportOptionファイルメニューの「ダウンロード形式」を非表示にします。バックエンドでの強制処理を補完するものとして、ユーザーが利用できないコマンドを目にしないようにする。
DisableExportCollaboraのエクスポート機能を無効にし、暗黙的にHideExportOption。開いているドキュメントからのエクスポートを、特定のファイルまたはセッションに対してブロックする必要がある場合。
UserCanNotWriteRelativeユーザーがWOPI経由で相対パスまたは「名前を付けて保存」でコピーを保存できないことをホストに通知します。ホストはこの要求を拒否する必要があります。「名前を付けて保存」時やエディターを通してコピーを作成する際にも、同様の操作は防止されなければなりません。
DisablePrintCollaboraのバックエンドでの印刷を無効にし、印刷オプションが非表示になっていることを示します。印刷も制限されている場合に限ります。これは輸出とは別個のものです。

最初の2つのフィールドは、Collaboraの「ダウンロード」/「エクスポート」機能をブロックするという限定的なタスクに使用します。ポリシーでこれらの個別の操作も対象としている場合にのみ、他のコントロールを追加してください。メニュー項目が表示されないだけでは、ダウンロードがブロックされているとは証明されません。

制限を適用する場所を決定する

まず、ファイルを保存し、Collaboraで開くアプリケーションを特定します。WOPIの用語では、そのアプリケーションはホストと呼ばれます。CollaboraはホストのCheckFileInfoエンドポイントを呼び出し、ファイル情報と機能を取得します。ホストは、誰がドキュメントを開いたか、共有、アカウント、またはファイルポリシーによってダウンロードが許可されているかどうかを把握しています。

  • Nextcloudまたはその他の統合ファイルプラットフォーム:インストールされているバージョンに「ダウンロードを隠す」などのポリシーがある場合は、サポートされている共有設定またはセキュアビュー設定を使用してください。統合機能により、そのポリシーがWOPI権限に変換されます。どのエクスポート、印刷、コピー、または直接ダウンロードのパスがブロックされているかを推測する前に、実際のホスト応答またはプラットフォームの最新のドキュメントを確認してください。
  • 独自のWOPIホストの場合: JSONレスポンスを生成するコードを更新してくださいCheckFileInfo。認証済みユーザーの権限とファイルの共有ポリシーに基づいて制限を計算します。
  • CODEコンテナ管理者がホストを制御できない場合は、ホスト管理者または統合開発者に強制適用を依頼してください。CODEコンテナのみを編集すると、一部のオプション形式がインターフェースから非表示になる場合がありますが、ファイルごとのWOPIアクセス許可ポリシーは提供されません。

Collaboraの現在のソース設定では、extra_export_formatsこれらはインターフェースレベルのオプションとして記述されています。そこでこれらのオプション形式を無効にしても、表示が非表示になるだけです。この設定をサーバー側のエクスポート強制として扱わないでください。これは形式メニューの表示を目的としたものであり、ホスト権限の代替として使用されるものではありません。

カスタムWOPIホストでエクスポート権限を設定する

1. CheckFileInfo レスポンスハンドラーを見つける

CollaboraのWOPIリクエストに応答するルートを特定します。アクセストークンの認証方法と、そのトークンを現在のユーザーとファイルにマッピングする方法を確認してください。ホストが独自の認証ルールに基づいて検証しない限り、GET /wopi/files/{id}ブラウザが提供するフラグ(例:)を信頼しないでください。?disableExport=true

2. ホストのポリシーから決定を導き出す

サーバー側のアクセス制御データを使用して、このユーザーがこのファイルをエクスポートできるかどうかを判断してください。ファイル所有者、内部編集者、および公開リンク閲覧者には、それぞれ異なる権限が付与されている可能性があります。制限が単一の共有フォルダに対するものである場合は、すべてのユーザーに誤って影響を与えるグローバル環境変数ではなく、その共有フォルダのポリシーに基づいて判断してください。

擬似コードでは、ドキュメントアクセス ポリシーを DisableExport、HideExportOption、および UserCanNotWriteRelative にマッピングします。
擬似コード例:WOPIフラグは、1人のユーザーの選択をグローバルに設定するのではなく、ファイルとユーザーの実際のアクセス ポリシーから導き出す。

3. ブール型のWOPIフィールドを返す

JSONレスポンスに2つのブール型フィールドを追加します。これは既存の完全なレスポンスにマージするための断片でありCheckFileInfo、必須のファイルおよびユーザープロパティの代替ではありません。

JSONエディタでは、HideExportOption、DisableExport、およびUserCanNotWriteRelativeがtrueに設定されていることが示されています。
CheckFileInfo のアクセス許可フィールドの例。ホストが相対保存要求を拒否する場合にのみ、[名前を付けて保存] プロパティを設定してください。
{
  "BaseFileName": "budget.xlsx",
  "Size": 48123,
  "UserId": "viewer-42",
  "OwnerId": "team-7",
  "UserCanWrite": false,
  "HideExportOption": true,
  "DisableExport": true
}

統合機能で既に提供されている通常の必須フィールドと機能フラグはそのまま使用してください。JSONブール値とを使用しtrue、やfalseなどの文字列は使用しないでください。エクスポートが許可されている場合は、統合機能とCollaboraのバージョンでサポートされている動作に応じて、falseを返すか、オプションのプロパティを省略してください。"true""1"

4. ポリシーで要求されている場合は、「名前を付けて保存」を個別にブロックする

ローカル形式へのエクスポートと、コピーをWOPIホストに保存する操作は異なります。ユーザーがエディタ経由で「名前を付けて保存」コピーを作成してはならない場合は、戻り値を返してUserCanNotWriteRelative: true、ホストが対応する相対書き込み要求を拒否するようにします。すべてのコピーまたは保存パスがブロックされると想定しないでくださいDisableExport。同様に、DisablePrint: true印刷がポリシーの対象となる場合にのみ含めます。

Collaboraスタイルのファイルメニューには「ダウンロード」が省略されているが、近くのWOPI権限カードにはUserCanNotWriteRelativeが有効になっていると表示されている。
メニューのモックアップには「ダウンロード」が省略されています。「名前を付けて保存」は別の操作であり、相対保存が許可されていない場合はWOPIホストが拒否する必要があります。

統合プラットフォームで同等の設定を適用する

Nextcloud がファイルと共有を管理する場合、最も影響の少ない方法は、共有タイプとバージョンで利用可能な場合、Nextcloud がサポートするダウンロード非表示または安全な表示の権限を使用することです。現在の Nextcloud Richdocuments ソースでは、ホスト側のダウンロード非表示ポリシーが Collabora のフィールドにマッピングされDisableExport、HideExportOption印刷とコピーの制限も設定されています。管理者に公開される正確な制御は、Nextcloud のリリース、エディション、共有タイプによって異なる場合があるため、カスタム WOPI パッチをアプリケーション ファイルにコピーするのではなく、インストール済みの製品で動作を確認してください。

別の WOPI ホストを運用している場合は、そのホストの CheckFileInfo レスポンスにフィールドを実装してください。Collabora が生成したコンテナ構成を変更して、ドキュメント化されていないキーを追加することは避けてください。ファイルごとのアクセス許可は WOPI レスポンスで通知されます。ホストのコードを変更した後は、そのアプリケーションの通常のリリースプロセスを使用してデプロイしてください。Collabora を再起動しても、ホストが生成するアクセス許可の決定は変更されません。ドキュメントを閉じて再度開くと、新しい CheckFileInfo レスポンスを取得できます。

制限が正しく機能することを確認してください。

  1. 制限されているはずのアカウントを使用してテスト文書を開きます。
  2. アプリケーションログまたは安全な開発トレースで、WOPIホストのCheckFileInfo応答を調べます。両方のフィールドがこのセッションでJSONブール値としてtrueに設定されていることを確認してください。
  3. Collaboraでは、「ダウンロード」オプションが存在しないことを確認し、該当するエクスポート操作をテストしてください。初期検証時には、実際の機密ファイルを使用しないでください。
  4. 「名前を付けて保存」もブロックする必要がある場合は、ホスト側の相対書き込み要求が拒否されていることを確認してください。ホストが操作を拒否しても、メニュー項目は表示されたままになる場合があります。
  5. エクスポート権限を付与した別のドキュメントを開きます。変更によって、意図せずすべてのユーザーまたはファイルに対してエクスポートが無効になっていないことを確認してください。
  6. ストレージプラットフォームからの直接ダウンロードを別途テストしてください。Collaboraのエクスポートフラグは、Nextcloud、ownCloud、WebDAV、またはその他のホストエンドポイントから元のファイルをダウンロードするユーザーの権限を自動的に取り消すものではありません。

コマンドが表示されたままの場合は、応答がテストしたファイルとユーザーに対するものであることを確認し、ドキュメントを再度開いて新しいセッションを作成し、ホストが実際に送信していることを確認しますHideExportOption。ボタンが消えても別の方法でエクスポートが機能する場合は、がDisableExport真であり、アクションがストレージホストが提供するダウンロードや統合固有の postMessage ハンドラーではなく、Collabora のエクスポートであることを確認します。

セキュリティ制限と実践的な推奨事項

これらの設定は、Collaboraでサポートされているエクスポートおよび保存操作を制御するものであり、ドキュメントを閲覧できるユーザーがスクリーンショットを撮ったり、画面を撮影したり、アプリケーションが表示を許可している情報を手動でコピーしたりすることを阻止するものではありません。Collaboraはドキュメントの内容を表示するために、その内容を受信する必要があります。より強力なデータ制御を行うには、エディターの制限をファイルホストのダウンロード認証、アクセストークンのスコープ、共有ポリシー、監査ログ、および組織が承認した透かしやデータ損失防止制御と組み合わせてください。結果として、サポートされているエクスポートパスが制限されるという説明をしてください。表示されているコンテンツのコピーが不可能になるという意味ではありません。

ほとんどのCODEインストールでは、ホストが生成するWOPI CheckFileInfo応答で、該当するユーザーとドキュメントにスコープを絞って、DisableExportとを使用しますHideExportOption。ホストで直接ダウンロードと名前を付けて保存を強制し、デプロイ後に制限付きセッションと許可されたセッションの両方を確認します。

参考文献

コメントを残す

Microsoft Wordで画像を移動する方法

Microsoft Wordで画像を移動する方法

Wordで画像をドラッグする方法、テキストの折り返しを選択する方法、段落内に画像を保持する方法、ページ上に画像を固定する方法、そして画像が移動しない場合のトラブルシューティング方法を学びましょう。

Excelにチェックボックスを挿入する方法:2つの簡単な方法

Excelにチェックボックスを挿入する方法:2つの簡単な方法

Excelのセル内ツールを使ってチェックボックスを挿入する方法、数式を使ってチェックされた項目の数を数える方法、古いデスクトップ版でリンクされたフォームコントロールを追加する方法を学びましょう。

Excelで文字を自動入力する方法:AからZ、そしてその先へ

Excelで文字を自動入力する方法:AからZ、そしてその先へ

Excelでフィルハンドル関数、SEQUENCE関数、または再利用可能なカスタムリストを使用して、AからZまでのアルファベット、小文字、またはZを超えるラベルを生成します。

Excelで取り消し線を引く方法:ショートカットと手順

Excelで取り消し線を引く方法:ショートカットと手順

Windows、Mac、Web版Excelで取り消し線を引く方法、セルの一部に書式を設定する方法、値を削除せずに行を削除する方法を学びましょう。

Microsoft Accessとは?そのデータベースツールはどのように機能するのか?

Microsoft Accessとは?そのデータベースツールはどのように機能するのか?

Microsoft Accessは、関連レコードの保存、クエリの作成、データ入力フォームの作成、レポートの生成を行うためのWindowsデータベースアプリケーションです。その仕組みと最適な活用シーンについて解説します。

Word 2010でグリッド線の高さと幅を変更する

Word 2010でグリッド線の高さと幅を変更する

Word 2010でグリッド線の高さと幅を調整する方法、表示される線の頻度を変更する方法、および下地となる水平方向と垂直方向の描画グリッドの間隔を設定する方法を学びましょう。

Office Outlook 2010 のインポートとエクスポート: PST ファイルを使用してデータを移動する

Office Outlook 2010 のインポートとエクスポート: PST ファイルを使用してデータを移動する

Outlook 2010にPSTファイルをインポートする方法、またはメール、連絡先、カレンダー、タスクをエクスポートする方法を学びましょう。正しいメニューに従い、フォルダの欠落や重複を避けてください。

Nucleus Kernelを使用してOutlook PSTファイルのパスワードを復元する

Nucleus Kernelを使用してOutlook PSTファイルのパスワードを復元する

Kernelが提供する最新の手順では、忘れてしまったOutlook PSTファイルのパスワードを復元する方法を解説します。正しいファイルの特定方法、バックアップの作成方法、ツールの制限事項の確認方法などが含まれています。

PowerPointスライドにライブWebページを挿入する方法

PowerPointスライドにライブWebページを挿入する方法

LiveWebアドインを使用すると、WebサイトをPowerPointスライドに配置し、サイズや更新動作を設定し、プレゼンテーション前に互換性を確認できます。

Access 2010データベースをフォームで開く方法

Access 2010データベースをフォームで開く方法

Access 2010データベースアプリケーションを、データ入力フォームに直接開くように設定し、オブジェクトリストを非表示にし、メニューを制限し、共有前に設定を確認します。