セキュリティ 仕組み Nextcloud 連携 大容量:非同期(キュー)対応

セキュリティ&仕組み
「添付を安全なリンクに」する理由と対策

添付そのものを送るのではなく、安全なダウンロードリンクに置き換えることで、誤送時の回収やアクセス制御が可能になります。
ZipCloudMilter はメール運用に自然にフィットする形で、回数・期限・パスワード別送・公開停止・履歴を提供します。
さらに 非同期キュー(Dispatcher/Worker) により、大容量ファイルでも送信を待たせず安定してリンク配布できます。

データフロー図(送信→保存→配布→失効)

通信 保護/制御 リスク/ブロック 非同期(キュー) 大容量:Dispatcher/Worker
送信者(メールクライアント) 添付を付けて送信 件名: #ZIP / #OFF / #REPLY Postfix(MTA) SMTP受信・配送 Milter と連携 ZipCloudMilter(Milter) 添付を解析 ジョブを enqueue 受信者(メールを受信) 本文は軽量 (リンク通知が届く) 誤送信 第三者転送 Async Queue(非同期:Dispatcher / Worker) Dispatcher:キュー監視・割当(normal/large) Worker:抽出/ZIP/アップロード/共有/通知/DB記録 ※大容量は large 経路で安定転送(分割/再試行など) queue: normal queue: large enqueue(ジョブ投入) 送信(先に完了) 送信者を待たせない タイムアウト回避 配送安定 Nextcloud(保存) 保存・共有リンク生成 権限/暗号/ログは 組織ポリシーに従う ZCM DB #LIMIT / #EXPIRE / 停止 履歴・監査・管理画面 (環境により範囲が異なる) 通知(受信者向け) DLリンク(必要ならトークン) + パスワード別送 数秒〜(サイズで変動) 通知(送信者向け) 公開停止/削除リンク + 処理タイムライン (テンプレートにより) 受信者(リンクからDL) パスワード入力 LIMIT/EXPIRE/停止チェック 制御(回数/期限/停止) 初回DL通知・履歴

※ 図は概念図です。実際の構成・ポリシー・待ち時間は環境により異なります。

大容量のポイント: ZipCloudMilter は「メール配送」と「ファイル転送(クラウド保存)」を切り分け、非同期キュー(dispatcher/worker)で安全に処理できます。 そのため、サイズが大きくても送信を待たせにくく、配送の安定性が上がります。
🔗

添付 → リンク配布の利点

  • 回収が可能: 誤送信でも 公開停止 で即時無効化
  • アクセス制御: #LIMIT(回数)と #EXPIRE(期限)で再配布を抑制
  • 別送パスワード: リンク通知とパスワード通知を分離
  • 軽量化: メールは常に軽く、到達率が安定
  • 履歴: 初回ダウンロード通知・アクセス履歴でトレーサビリティ
🧾

メール運用にフィットする理由

  • 件名コマンド: 送信者の操作は件名に #ZIP / #OFF / #REPLY 等を付けるだけ
  • 制御パラメータ: #LIMIT=3 / #EXPIRE=7 のように「回数・期限」を指示できる
  • 非同期キュー: 大容量は送信後に worker がバックグラウンドでアップロード・通知
  • 相手先別ポリシー: ドメインごとに配布方式を切替可能
  • 返信も安全: #REPLY で返信アップロード用リンクを同時発行(運用により)

制御ポイントと運用フロー

期限(EXPIRE)

案件クローズに合わせた自動失効。残置リスクを低減。

🔁

回数(LIMIT)

想定外の再配布・多重DLを抑制。0で無制限も可(運用ポリシー次第)。

🔐

パスワード別送

リンク通知とパス通知を分離。漏洩時の直アクセスを抑制。

🛑

公開停止

送信者通知から即停止/削除。誤送信時の初動に。

📬

初回DL通知

相手が開いた瞬間を把握。やり取りの節目を可視化。

📚

履歴/監査

アクセスの検索・把握(範囲は環境設定に依存)。

補足: 受信者別トークン(個別URL)やワンタイム方式などの詳細機能は、環境設定・ポリシーにより有効/無効が変わります。 「誰に・いつまで・何回まで」を運用として決めるのが安全設計のコツです。
🛡️

プライバシーの考え方

  • 本文にはファイル実体を残さない(リンク化)
  • 保存先は Nextcloud。保存/暗号/権限制御は組織のポリシーに従う
  • 有効期限切れ後の削除は、環境・運用ルール(保管日数等)に従う
  • 大容量でも「メール本文」は軽いまま(配送と保存を分離)
🧭

責任分界(概要)

  • 送信者: 件名コマンド設定、誤送時の公開停止
  • 受信者: リンク/パスの適切な取り扱い(第三者転送を避ける)
  • 管理者: 既定値・ポリシー設計、Nextcloud 側の保護(権限/ログ/クォータ等)
  • システム: 非同期キューでアップロード/通知(サイズにより待ち時間は変動)

かんたん脅威モデル(チェックリスト)

推奨(Do)
  • 取引先ごとに #EXPIRE#LIMIT の既定値を設計
  • 重要案件は #ZIP + パスワード別送 を標準化
  • 初回DL通知で受け取り確認、必要に応じて再送
  • 誤送信時は通知メールの削除リンクから即停止
  • 大容量運用では「通知が来るまで数秒〜」を社内ルールに明記
避けたい(Don't)
  • 本文にパスワードや機微情報を同時記載
  • 無期限・無制限のリンクを恒常的に運用
  • Nextcloud 側のクォータ/権限/ログ設定を放置
  • 大容量でも「即時に通知が来る前提」で運用する(サイズで変動します)
ポイント: 「リンク配布」は万能ではありません。
ただし 停止できる記録が残る期限で消える という運用特性により、 “メールで安全に送る”ことを日常運用として実現しやすくなります。
さらに非同期キュー対応により、大容量でも配送の安定性を高められます。

よくある質問

パスワードを別送する理由は?

リンク通知とパスワード通知を分離することで、単一メールの漏洩で内容に直アクセスされにくくします。

リンクを転送されたら?

#LIMIT#EXPIRE で二次配布を抑制できます。必要に応じて送信者側で公開停止してください。

容量・大きなファイルは?

実体は Nextcloud に保存され、メールは軽量のままです。さらに ZipCloudMilter は非同期キュー(dispatcher/worker)に対応しており、 大容量でも送信を待たせにくく、タイムアウトや配送の不安定化を抑えます。
上限は Nextcloud 側のクォータやWebサーバ/ストレージ構成に依存します(環境により異なります)。

通知メールはすぐ届きますか?

通常はすぐ届きますが、大容量では非同期処理のため数秒〜(サイズ・回線・環境により変動)かかる場合があります。 送信者を待たせない設計のため、配送の安定性を優先しています。

#OFF は何ですか?

件名に #OFF を付けると、そのメールはリンク化せず「通常のメールとして送る」ことができます(ポリシーにより制限される場合があります)。