はじめに
こんにちわ、セキュリティチームのむろです。
今回はmxHEROのルール処理後の追加アクションを追加する機能を使ってみたのでご紹介します。
※以後、ブログ内では画面上の表記に倣って「More actions…」機能と表現します。
「More actions…」機能はそれほど複雑な設定ではありません。
一部でmxHEROの「変数」を利用する部分もありますが、ユースケースを例にして該当部分も解説します!
「More actions…」機能の設定箇所
まずは設定を行う箇所ですが、ルールの「4.ストレージのファイルパス」の下にある「Add Action」を選択すると「More actions…」機能の設定画面が現れます。

見ての通りですが、設定項目はそんなに多くはないです。

「More actions…」機能は大きく分けて2つの設定があります。
- ルールが処理が失敗した場合のアクション設定
- 設定名:When the email could not be processed
- ルールの処理が成功した場合の追加アクション設定
- 設定名:When the email was successfully processed
When the email could not be processedの設定値
「When the email could not be processed」=ルールの処理が失敗した時の設定値は以下となります。
<アクション>
- 「Deliver anyway」 ※そのままメールを送付する
- 「Bounce email to sender」 ※送信者へバウンスメールを返す
When the email was successfully processedの設定値
「When the email was successfully processed」=ルールの処理が成功した時の設定値は以下となります。
<追加アクション>
- 「Do nothing」 ※何もしない
- 「Send a copy」 ※メールの写しを送信する
- 「Forward」 ※メールを転送する
<宛先>
- 「to the account」※固定の宛先に送信する
- 「to the account resolved by the variable」※固定の宛先に送信する
<対象の内容>
- 「the original email (before processing)」※mxHEROのルール処理前のオリジナルメール
- 「the resulting email (after the processing)」※mxHEROのルール処理後のメール
「More actions…」機能を使ってみる
2つの機能を具体的なユースケースでご紹介します。
ユースケース1)ルール処理が失敗した場合にメールを送信させない
mxHEROではクラウドストレージ側でファイルの保管などが何らかの理由で失敗した場合に添付ファイルを共有リンクに置き換えずにそのまま送付する挙動がデフォルトでした。
つまり、「Deliver anyway」設定がデフォルトの挙動でした。
しかし、組織のセキュリティポリシーによっては確実に共有リンク化してからメールを送付して欲しいケースがあるかと思います。
ルール処理が失敗した際にメール送信させず、バウンスメールを送信者へ返す設定が可能になりました。
設定方法
「When the email could not be processed」設定でルールの実行が失敗した際の挙動を選択できます。
「Bounce email to sender」を選択します。

設定するとこうなる
今回はクラウドストレージへのアップロード時にエラーが起こる状態を再現させて試してみました。
(Box側に存在しないメールアドレスアカウントでmxHEROで処理させて意図的にエラー)
想定通り、設定後は以下のメッセージが送信メールの返信という形で「noreply@mxhero.com」からバウンスメール通知が来ます。
添付ファイルを処理できなかったため、メッセージを受信者 <受信者のメールアドレス> に配信できなかったことをお知らせしなければなりません。しばらくしてからこのメールを再送信してみてください。

ユースケース2)mxHEROに処理された後の送信メールを送信者自身に転送する
まず前提知識として、従来はメールをした送信者自身はmxHEROで置き換えが行われた共有リンクを把握するために
- クラウドストレージ側の添付ファイルの保存領域にアクセス可能であり
- mxHEROで保存される添付ファイルのフォルダ構造を理解して
- 実際にクラウドストレージ上のファイルを見つけて共有リンクを参照する
ことが必要でした。
「When the email was successfully processed」設定の転送機能でmxHEROで処理後の自身が送信したメールをemlファイルとして添付された状態で自分自身に転送させることができます。
設定方法
まずは自分自身のメールアドレスへ返すようにするために以下の内容の「カスタム変数」を作成します。
- 添付ファイル数が1以上の場合に{Email Address}の値を返す変数
管理コンソールの自動ファイリング > 変数 > 作成を選択します

以下のように設定して保存します。
- 変数名:Cusotm_withAttachmentToEmailAddress ※任意の変数名
- When Fields:「{Attachment Count}」を選択
- 条件:「が次以上または等しい」を選択し、値を「1」を指定
- アクション:「に変換する」変換後の値で「{Email Address}」を指定

プラスマークのメールエイリアスに対応している場合は通常の受信メールと見分ける目的で「{Email Address}」ではなく以下のように設定する事も可能です。
- 「{Email, local part}+mxherosend@{Email, domain part}」

変数が作成できたら「More actions…」機能の「When the email could not be processed」設定で以下のように設定します。
- When the email could not be processed ※ルール処理が成功した場合
- 「Forward」 ※メール転送を動作させる
- 「to the account resolved by the variable」 ※転送先を変数で指定する
- 「Cusotm_withAttachmentToEmailAddress」を選択 ※先ほど作成したカスタム変数を選択
- 「the resulting email (after the processing)」 ※mxHEROのルール処理後のメール

「Send a copy」の場合は自分自身が宛先の場合はメールが受信できないため、「Forward」を選択する必要があります
「When the email could not be processed」設定では直接{Email Address}は選択できません。 今回のようにカスタム変数を利用して間接的に{Email Address}変数や{Email, local part}、{Email, domain part}を利用します
設定するとこうなる
添付ファイル付きのメールを送信すると「noreply@mxhero」からmxHEROで処理後のメールがemlファイルとして添付され通知されます。
添付されたemlファイルを開くと共有リンクを把握できます。
宛先が複数ある場合は宛先ごとに転送メールが返ってきます。
- mxHEROは宛先ごとにファイルを保管し共有リンクを別々に生成するためです


先ほどの変数設定で以下のように作成している場合はGmailのフィルタ設定やOWAルールで振り分けを行うように設定すると通常の受信メールと混ざらないように整理ができます。
- 「{Email, local part}+mxherosend@{Email, domain part}」

さいごに
いかがだったでしょうか、「More actions…」機能のユースケースを例に使い方を解説してみました。
「More actions…」機能を運用に組み込むことをご検討する際の参考になれば幸いです!