こんにちは、ひろかずです
メール誤送信対策をしているけど、送信してしまった添付ファイルをどうにかできないかという声が聞こえてきたので一筆書きます。
tl;dr的な何か
- Exchange送受信メールをmxHeroというSaaSにリレーさせる中で、添付ファイルをBoxに放り込んで、Box URL(共有リンク)に置き換えます
- 誤送信が判明した時点で、共有リンクをOffにすることで、その時点以降のファイル参照やダウンロードを停止できます
- 共有リンクをOffにするまでに参照、ダウンロードされた状況は、Boxのファイルアクセス統計画面で確認することができます
ざっくり構成

前提条件
- Exchange Onlineでメール送受信ができる状態であること
- Exchange Onlineの管理者権限を有しており、管理画面を操作可能であること
- メールドメインのDNSレコードを編集する権限を有しており、管理画面を操作可能であること
- BoxのBussiness Plus、またはEnterpriseのライセンスを有していること
- Box共同管理者以上の権限を有しており、管理画面を操作可能であること
- サポートと英語でのテキストコミュニケーションが取れること
参考ドキュメント
- Register a new Domain
- Manually Configuring Office 365 for mxHero Fusion (part 1: Creating the Connector)
- Manually Configuring Office 365 for mxHero Fusion (part 2: Transport Rule)
- Improving Delivery with SPF
- Setting up a BOX Enterprise or Business account
- Setting up a tracking folder at BOX
- Replace attachments with Mail2Cloud links with expiration date and restricted access
- Case: Replace inbound attachments with Box links
工程
- mxHeroのトライアルを開始し、サポートに連絡する
- コネクタを作成する(Exchange Online)
- メールフローを作成する(Exchange Online)
- SPFレコードを設定する
- Box連携設定をする
- Fusion設定をする
- 動作確認
1. mxHeroのトライアルを開始し、サポートに連絡する
- [参考ドキュメント]
- [ログイン画面]から、[Register a new Domain]を選択

- 必要情報を入力し、[Register]を選択

- 登録したメールアドレスに確認メールが届くので、[Confirm Registration]を選択
- ユーザー情報を登録
- [ヘルプセンター]にアクセスし、
X-mxHero-Transport-Agentの値の払い出しを依頼する- 管理画面上でDomainの表示が以下のようにならない場合、併せて対応を依頼する

2. コネクタを作成する(Exchange Online)
- [参考ドキュメント]
-
Office 365管理センターのExchange管理画面から、[メールフロー] > [コネクタ] > [+]を選択

- メールフローのシナリオで、以下のように設定

- コネクタ名を設定し、[次へ]を選択
- [メッセージをこのコネクタにリダイレクトする…]を選択し、[次へ]を選択

- [これらのスマートホストを使ってメールをルーティングする]を選択
- [+]を選択し、
smtp.mxhero.comを登録 - [次へ]を選択

- 以下のように設定し、[次へ]を選択

- [次へ]を選択

- [+]を選択し、
admin@mxhero.comを登録 - [検証]を選択

- 検証結果が
成功であることを確認して、[保存]を選択

3. メールフローを作成する(Exchange Online)
送信メールの添付ファイルをmxHeroに送るメールフローを作成
- [参考ドキュメント]
- Exchange管理センターで[メールフロー] > [ルール] > [+] > [ルールの新規作成]を選択

- ルールを適用する条件として、[送信者の場所が] > [外部/内部である] > [組織内]を選択

- 実行する処理として、[メッセージのプロパティを変更する] > [メッセージヘッダーの設定]を選択
- キー:
X-mxHero-Transport-Agentを設定 - 値:サポートから払い出された値を設定
- キー:

- 実行する処理として、[メッセージを次へリダイレクトする] > [以下のコネクタ]を選択
- 前項で作成したコネクタを選択

- ただし次の場合を除く...として、[メッセージヘッダ] > [次のテキストパターンと一致する]を選択
- キー:
X-mxHero-Serverを設定 - 値:サポートから払い出された値を設定(X-mxHero-Transport-Agentと同じ値を設定)
- キー:

- 設定内容はこんな感じ
- [保存]を選択

受信メールの添付ファイルをmxHeroに送るメールフローを作成
- ルールを適用する条件として、[受信者の場所が] > [外部/内部である] > [組織内]を選択
- 他の箇所は、前項と同じように設定
- [保存]を選択

IPホワイトリストを設定
- Exchange管理センターの[保護] > [接続フィルター] > [Default]を編集

- IP許可一覧に [参考ドキュメント] に掲載されているIPアドレスを登録
- [保存]を選択

4. SPFレコードを設定する
- mxHeroを経由させるメールドメインのDNSレコードにSPFレコード(TXT)を登録する
- 値は、 [参考ドキュメント] を参照
5. Box連携設定をする
Enterprise IDを登録
- [参考ドキュメント]
- Box管理画面にて、[アプリ] > [カスタムアプリ] > [新しいアプリケーションを承認]を選択

- [参考ドキュメント] に掲載されているクライアントIDを入力して、[OK]を選択

- 以下のように登録されることを確認

- mxHero管理画面にて、[Domain] > [BOX SETTINGS]を選択
- Box Enterprise IDを設定

Tracking Folderの設定
- 参考ドキュメント
- [SELECT BOX FOLDER]を選択

- mxHeroの添付ファイルを格納するフォルダを選択して、[OK]を選択

6. Fusion設定をする
送信メールの添付ファイルをBox URLに変換
- 参考ドキュメント
- ダッシュボードのFusionにて、[ADD NEW]を選択

- こんな感じに設定
- fromはExchange Onlineを利用している自ドメインを設定
- Boxアカウントは、admin@your.comain.comなどの個人に紐付かないユーザーを利用することが望ましい

- 格納先フォルダは以下のように設定
- フォルダ名は任意

- [SECURITY OPSIONS]を選択し、[Secure Email]項の[Prebent file downloads]のトグルをON

除外条件の設定
- [ADVANCED OPSTIONS]を選択し、[Male an exception]のトグルをON
- From
自分のドメインto相手先ドメインを設定
- From

- [Create this Rule]を選択
受信メールの添付ファイルをBox URLに変換
- [参考資料]
- ダッシュボードのFusionにて、[ADD NEW]を選択

- こんな感じに設定
- fromとtoはExchange Onlineを利用している自ドメインを設定
- Boxアカウントは、admin@your.comain.comなどの個人に紐付かないユーザーを利用することが望ましい
- fromとtoはExchange Onlineを利用している自ドメインを設定

- [ADVANCED OPSTIONS]を選択し、[Do not overwrite existing messages]と[Sabe message as PDF]のトグルをON

7. 動作確認
- 受信メールはこんな感じ

- 送信メールはこんな感じ

- 添付付されているPDF(ペーパークリップ)の内容はこんな感じ
- Viewを選択するとBoxのプレビューが表示されます
- Downloadを選択すると、ファイルがダウンロードできました

- Box上の格納先フォルダはこんな感じ
− 宛先・送信元ごとフォルダの配下にファイルがあり、共有リンクが設定されていました

送受信メールに添付されているファイルがBox URLに変換されていることを確認できました
おわりに
- HTMLメール埋め込まれた画像は、Box URLに変換されませんでした
- レンダリングが壊れてしまうことを回避する措置のようです
今日はここまでです
お疲れさまでした