[差出人 のアドレスに '@contoso.com' が含まれる場合] のトランスポート ルールが正しく処理されない
こんにちは。Exchange サポート チームの伯谷です。
Exchange 2007 や Exchange 2010 の頃からお問い合わせいただく内容として、「システムからのメールが、迷惑メール フォルダに入ります。Exchange サーバーで対処できますか?」 というご質問があります。
とてもシンプルな対処として、「システムから届いたメールに SCL -1 をスタンプする」 という方法があります。
しかし、この "システムから届いたメール" の判定として、ルールの設定方法によっては、管理者が期待した判定が行われません。
今回は、この "システムから届いたメール" の条件設定についてご紹介します。
- 条件設定の候補
"システムから届いたメール" の判定条件として、ドメインを使用する方法があります。
例として、system@contoso.com という送信元から届くシステム メールの場合、以下の 3 つのような条件設定が考えられます。
設定 (1)
メッセージが次の場合:
送信者のアドレスに次のテキスト パターンが含まれている場合: '@contoso.com$'
設定 (2)
メッセージが次の場合:
送信者のアドレスに次の単語が含まれている場合: '@contoso.com'
設定 (3)
メッセージが次の場合:
送信者のアドレスに次の単語が含まれている場合: 'contoso.com'
- どの条件設定を設定すべきか?
3 つの条件設定すべてに関して、管理者が期待している "システムから届いたメール" の判定に使用できそうです。
しかし、常に管理者の期待した動作を処理させるためには (3) の設定を行う必要があります。
----- ルールの例 -----
メッセージが次の場合:
送信者のアドレスに次の単語が含まれている場合: 'contoso.com'
次の操作を行います:
および SCL (Spam Confidence Level) を '-1' に設定する
----- ルールの例 -----
- トランスポート ルールの条件が期待した判定をしないのは?
(1) のようにテキスト パターンを指定する場合、Exchange 2007 や Exchange 2010 では技術情報 2673160 で公開しているように、期待した判定とはなりません。
Title: An Exchange Server 2007 Transport Rule does not work as expected
URL: https://support.microsoft.com/en-us/kb/2673160
また、(2) のように文字列を指定する場合において、@ や . (ドット) から始まる/終わる文字列を条件とすると、こちらも管理者が期待した判定とならない場合がございます。
(1) や (2) の動作については、ドメインの構成や文字列によって、管理者が期待した判定が行われる場合がございます。しかしながら、現在のところ、期待した動作となるパターンは明確ではありません。このため、条件設定をする場合には (3) のような設定をご実施ください。
現在公開されている TechNet の情報では、正規表現を用いてトランスポート ルールの設定が可能なことが記載されております。しかしながら、本投稿でご案内しておりますように、Exchange 2007 や Exchange 2010 では完全な .NET Framework の正規表現を実装していないため、正規表現を使用してトランスポート ルールを作成すると、管理者の期待した動作とならないケースがございます。
Title: トランスポート ルールの正規表現
URL: https://technet.microsoft.com/ja-jp/library/aa997187(v=exchg.141).aspx
この公開情報については、現在、公開情報の見直し、および公開内容の精査を行っております。
弊社公開情報である TechNet において、お客様環境に意図しない設定を招く記載がありますことをお詫び申し上げます。
今後も当ブログおよびサポート チームをよろしくお願いいたします。