Exchange Online のメール フロー ルールを管理する

Exchange Online の組織または Exchange Online メールボックスを持たないスタンドアロンの Exchange Online Protection (EOP) 組織では、Exchange メール フロー ルール (トランスポート ルールとも呼ばれます) を使用して、組織を通過するメッセージの特定の条件を検索し、それらに対するアクションを実行できます。

この記事では、ルールの 作成コピー順序の調整ルールの有効化または無効化削除インポートまたはエクスポート 、ルール の使用状況の監視を行う方法について説明します。

ヒント

ルールが期待どおりに動作するようにするには、各ルールとルール間の相互作用を十分にテストしてください。

はじめに把握しておくべき情報

ヒント

問題がある場合は、 Exchange のフォーラムで質問してください。 次のフォーラムにアクセスしてください: 「Exchange Online」または「Exchange Online Protection」。

メール フロー ルールの作成

メール フロー ルールは、EAC または PowerShell で作成できます。 EAC では、既存のルールをコピーしてメール フロー ルールを作成することもできます。

注:

メール フロー ルールを作成またはコピーした後、新しいルールがメールに適用されるまでに 30 分以上かかる場合があります。

EAC を使用してメール フロー ルールを作成する

EAC を使用すると、テンプレートを選択するか、最初から開始することで、メール フロー ルールを作成できます。

  1. https://admin.exchange.microsoft.comの新しい EAC で、[メール フロー>Rules] に移動します。 または、[ ルール] ページに直接移動するには、 https://admin.exchange.microsoft.com/#/transportrulesを使用します。

  2. [ ルール ] ページで、次のいずれかのオプションを使用してルールを作成します。

    • テンプレートからルールを作成するには、[Add a rule Add Icon]\(ルールの追加アイコン\) を選択し、ドロップダウン リストからテンプレートを選択します。
    • 新しいルールを最初から作成するには、[ルールの追加] [アイコンの追加] の順に選択します>新しいルールを作成します

    新しいルール ウィザードが開きます。

  3. [ ルール条件の設定 ] ページで、[ 名前 ] ボックスにルールの一意の名前を入力し、ルールの条件、例外、およびアクションを選択します。

    • このルールを if...: 一覧から条件を選択します。

      • 一部の条件では、他の値が必要です。 たとえば、[ 送信者は...] を選択した場合は、送信者アドレスも指定する必要があります。 単語または語句を追加する場合、末尾のスペースは許可されません。
      • さらに条件を追加するには、[ Add conditionAdd Icon]\(条件の追加アイコン \) を選択し、この手順を繰り返します。
      • [ 条件の削除]アイコンを選択 して、条件を削除します。
      • 組織内のすべてのメッセージに適用するには、[ すべてのメッセージに適用 ] 条件を選択します。
    • 次の操作を行います。..: 一覧からアクションを選択します。

      • 一部のアクションでは、他の値が必要です。 たとえば、[ 承認のためにメッセージを転送する]を選択した場合は、組織内の受信者を選択する必要があります。
      • さらにアクションを追加するには、[アクション追加] [アイコンの追加] の順に選択し、この手順を繰り返します。
      • [ アクションの削除]アイコンを選択 して、アクションを削除します。
    • if...: ルールに対する例外を指定するには、この設定を使用します。 使用可能な例外は、使用可能な条件と同じです。

      • 一部の例外では、他の値が必要です。 たとえば、[ 送信者は...] を選択した場合は、送信者アドレスも指定する必要があります。 単語または語句を追加する場合、末尾のスペースは許可されません。
      • さらに例外を追加するには、[ Add exceptionAdd Icon]\(例外の追加アイコン\ ) を選択し、この手順を繰り返します。
      • [ 例外の削除]アイコンを選択 して、例外を削除します。

    [ ルールの条件の設定 ] ページが完了したら、[ 次へ] を選択します。

  4. [ ルール設定の設定 ] ページで、次の設定を構成します。

    • ルール モード: 次のいずれかの値を選択します。

      • 適用: ルールを有効にし、メッセージの処理を直ちに開始します。 ルールに対するすべてのアクションが実行されます。
      • ポリシー ヒントを使用したテスト: ルールを有効にし、ポリシー ヒントアクション ( ポリシー ヒントを使用して送信者に通知) が送信されますが、メッセージ配信に関連するアクションは実行されません。
      • ポリシー ヒントなしでテストする: [インシデント レポートの生成 ] アクションのみが適用されます。 メッセージ配信に関連するアクションは実行されません。
    • 重大度: このルールの重大度レベルを選択します。 ルールの一致は、アクティビティ レポートの重大度レベル別にグループ化されます。 重大度レベルは、レポートを使いやすくするためのフィルターにすぎません。 重大度レベルは、ルールが処理される優先順位には影響しません。

      • 指定なし
      • [ Medium]
      • High
      • 監査なし: ルールの一致はルール レポートに表示されません。
    • [このルールを有効にする ] と [このルールを非アクティブ化する] をオンにする: これらの設定を使用して、特定の期間のルールのオンとオフを切り替えます。 日付に このルールをアクティブ化する前にルール を作成した場合、ルールは有効になりますが、処理されません。 日付に このルールを非アクティブ化 した後、ルールは有効のままですが、処理されません。

    • 他のルールの処理を停止する: この設定を使用して、このルールの後に追加のルールがメッセージに適用されないようにします。 このルールによってメッセージが処理された場合、そのメッセージに対して後続のルールは処理されません。

    • ルール処理が完了しない場合はメッセージを延期する: ルール処理を完了できない場合のメッセージの処理方法を指定します。 既定では、ルールは無視され、他のルールによるメッセージの処理は続行されます。 このオプションを選択すると、処理のためにメッセージが再送信されます。

    • メッセージ内の送信者アドレスの一致: 送信者のメール アドレスを検査する条件または例外によって評価される電子メール アドレスを指定します。

      • ヘッダー: メッセージ ヘッダーのみが検査されます。
      • エンベロープ: SMTP メッセージ エンベロープのみが検査されます。
      • ヘッダーまたはエンベロープ: メッセージ ヘッダーと SMTP メッセージ エンベロープの両方が調べられます。
    • コメント: ルールにオプションのコメントを追加します。

    [ ルール設定の設定 ] ページが完了したら、[ 次へ] を選択します。

  5. [ 確認と完了 ] ページで、設定を確認します。 [ 戻る ] を選択するか 、[ルールの条件の編集] リンクまたは [ルール設定の編集] リンクを使用して設定を変更します。

    [ 確認と終了 ] ページが完了したら、[完了] を選択 します

  6. 確認ページで、[完了] を選択 します

Exchange Online PowerShell を使用してメール フロー ルールを作成する

次の例では、Sales Department 配布グループに送信される外部メッセージの件名行に External message to Sales DG: テキストを付加する新しいメール フロー ルールを作成します。

New-TransportRule -Name "Mark messages from the Internet to Sales DG" -FromScope NotInOrganization -SentTo "Sales Department" -PrependSubject "External message to Sales DG:"

詳細な構文とパラメーターについては、「New-TransportRule」を参照してください。

注:

前の例で使用したパラメーターとアクションは、図専用です。 使用可能なすべてのメール フロー ルールの条件とアクションを確認して、要件を満たすものを判断します。

EAC を使用してメール フロー ルールをコピーする

  1. https://admin.exchange.microsoft.comの新しい EAC で、[メール フロー>Rules] に移動します。 または、[ ルール] ページに直接移動するには、 https://admin.exchange.microsoft.com/#/transportrulesを使用します。

  2. [ ルール ] ページで、[ 状態 ] の横に表示されるラジオ ボタンを選択してルールを選択し、表示される [複製のコピー アイコン ] アクションを選択します。

  3. いた [<Rule Name>" ポップアップのコピーを作成 すると、[ 条件 ] タブと [設定] タブの値に、コピーしたルールの設定が入力されます。 既定の名前は、<Rule Name> のコピーです。 任意のルール設定を変更できます。 使用可能な設定は、「EAC を使用してメール フロー ルールを作成する」セクションで説明されているように、新しい ルールの作成と 同じです。

  4. ルールの設定の編集が完了したら、ポップアップの下部にある [ コピーの作成 ] を選択します。

  5. 開いた確認ポップアップで、[複製] を選択 します

  6. 開いた成功ポップアップで、[ X を閉じる] を選択します。

メール フロー ルールが正常に作成されたことを知る方法

メール フロー ルールが正常に作成されたことを確認するには、次のいずれかの手順を実行します。

  • の EAC の [ルール] ページで、作成またはコピーしたメール フロー ルールが一覧表示されていることを確認します。

  • Exchange Online PowerShell で、 <New Rule Name> を作成またはコピーしたルールの名前に置き換え、次のコマンドを実行します。

    Get-TransportRule -Identity "<New Rule Name>""
    

メール フロー ルールを表示または変更する

注:

メール フロー ルールを変更した後、更新されたルールがメールに適用されるまでに 30 分以上かかる場合があります。

EAC を使用してメール フロー ルールを表示または変更する

  1. https://admin.exchange.microsoft.comの新しい EAC で、[メール フロー>Rules] に移動します。 または、[ ルール] ページに直接移動するには、 https://admin.exchange.microsoft.com/#/transportrulesを使用します。
  2. [ ルール ] ページで、名前の横にあるラウンド チェック ボックス以外の行の任意の場所をクリックして、一覧からルールを選択します。
  3. 開いた詳細ポップアップで、ポップアップの上部にある [ ルール条件の編集 ] と [ルール設定の編集] を選択して、既存の 設定 を確認し、変更を加えることができます。 使用可能な設定は、「EAC を使用してメール フロー ルールを作成する」セクションで説明されているように、新しい ルールの作成と 同じです。

Exchange Online PowerShell を使用してメール フロー ルールを表示または変更する

次の例では、組織内のすべてのメール フロー ルールの概要リストを返します。

Get-TransportRule

特定のメール フロー ルールに関する詳細情報を表示するには、ルールの一意の識別子 (名前、DistinguishedName、GUID など) を指定します。 Format-List コマンドレットに出力を送信してプロパティを書式設定すると便利です。

次の例では、指定したメール フロー ルールのすべてのプロパティを返します。

Get-TransportRule -Identity "Sender is a member of marketing" | Format-List

次の例では、"Sender is a member of marketing" という名前の既存のルールに例外を追加して、ユーザー Kelly Rollin によって送信されたメッセージに適用されないようにします。

Set-TransportRule -Identity "Sender is a member of marketing" -ExceptIfFrom "Kelly Rollin"

詳細な構文およびパラメーターの情報については、Set-TransportRule を参照してください。

メール フロー ルールが正常に変更されたことを知る方法

メール フロー ルールが正常に変更されたことを確認するには、次のいずれかの手順を実行します。

  • の EAC の [ルール] ページで、[状態] 値の横にあるラジオ ボタン以外の行の任意の場所をクリックして変更したルールを選択します。 開いた詳細ポップアップで、設定を確認します。

  • Exchange Online PowerShell で、 <Rule Name> を変更した規則の名前に置き換え、次のコマンドを実行します。

    Get-TransportRule -Identity "<Rule Name>" | Format-List Name,ExceptIfFrom
    

メール フロー ルールの優先順位を設定する

EAC の [ ルール ] ページには、メール フロー ルールが処理された順序で表示されます。 一覧の上部にあるルールの 優先度 の値は 0 で、最初に処理されます。

EAC を使用してルールの優先順位を設定する

  1. https://admin.exchange.microsoft.comの EAC で、[メール フロー>Rules] に移動します。 または、[ ルール] ページに直接移動するには、 https://admin.exchange.microsoft.com/#/transportrulesを使用します。
  2. [ ルール ] ページで、[ 状態 ] の横にあるラジオ ボタンを選択してルールを選択し、[ 上へ移動 ] または [ 下へ移動 ] アクションを選択して、ルールを一覧の上または下に移動します。

Exchange Online PowerShell を使用してルールの優先順位を設定する

次の例では、指定したメール フロー ルールの優先順位を 2 に設定します。

Set-TransportRule -Identity "Sender is a member of Marketing" -Priority "2"

詳細な構文およびパラメーターの情報については、Set-TransportRule を参照してください。

メール フロー ルールの優先順位が正常に設定されたことを確認する方法

メール フロー ルールの優先度が正常に設定されたことを確認するには、次のいずれかの手順を実行します。

  • の EAC の [ルール] ページで、ルールの順序を確認します。

  • Exchange Online PowerShell で、次のコマンドを実行します。

    Get-TransportRule | Format-List Name,Priority
    

メール フロー ルールを有効または無効にする

既定では、EAC を使用してメール フロー ルールを作成すると、メール フロー ルールの状態は無効になります。 これは、最後に有効にする前にルールをもう 1 回確認できるように行われます。 ルールの作成が完了したら、ルールを有効にすることができます。

EAC を使用してメール フロー ルールを有効または無効にする

  1. https://admin.exchange.microsoft.comの EAC で、[メール フロー>Rules] に移動します。 または、[ ルール] ページに直接移動するには、 https://admin.exchange.microsoft.com/#/transportrulesを使用します。
  2. [ ルール ] ページで、名前の横にあるラジオ ボタン以外の行の任意の場所をクリックして、ルールを選択します。 ルールの [状態] の値は [有効] または [無効] です
  3. 開いた詳細ポップアップで、ポップアップの上部付近にある [ルールの有効化または無効化 ] セクションのトグルを使用して、ルールを有効または無効にします。

Exchange Online PowerShell を使用してメール フロー ルールを有効または無効にする

次の例では、指定したメール フロー ルールを無効にします。

Disable-TransportRule -Identity "Sender is a member of marketing"

次の例では、指定したメール フロー ルールを有効にします。

Enable-TransportRule -Identity "Sender is a member of marketing"

構文とパラメーターの詳細については、「 Disable-TransportRule 」および 「Enable-TransportRule」を参照してください。

メール フロー ルールを正常に有効または無効にしたことを確認するにはどうすればよいですか?

メール フロー ルールが正常に有効または無効になっていることを確認するには、次のいずれかの手順を実行します。

  • の EAC の [ルール] ページで、[状態] 列の値を確認します。

  • Exchange Online PowerShell で、次のコマンドを実行して、組織内のすべてのルールとその状態値の一覧を返します。

    Get-TransportRule | Format-Table Name,State
    

メール フロー ルールを削除する

EAC を使用してメール フロー ルールを削除する

  1. https://admin.exchange.microsoft.comの EAC で、[メール フロー>Rules] に移動します。 または、[ ルール] ページに直接移動するには、 https://admin.exchange.microsoft.com/#/transportrulesを使用します。
  2. [ルール] ページで、[状態] 値の横にあるラジオ ボタンを選択してルールを選択し、表示される [削除] アイコンを選択します。
  3. 開いた確認ポップアップで、[確認] を選択 します

Exchange Online PowerShell を使用してメール フロー ルールを削除する

次の例では、指定したメール フロー ルールを削除します。

Remove-TransportRule -Identity "Sender is a member of marketing"

詳細な構文およびパラメーターの情報については、Remove-TransportRule を参照してください。

メール フロー ルールが正常に削除されたことを知る方法

メール フロー ルールが正常に削除されたことを確認するには、次のいずれかの手順を実行します。

  • の EAC の [ルール] ページで、削除したルールが一覧に表示されていないことを確認します。

  • Exchange Online PowerShell で、次のコマンドを実行し、削除したルールが一覧に表示されなくなったことを確認します。

    Get-TransportRule
    

ルールの使用状況を監視する

EAC で Exchange トランスポート ルール レポート を使用して、各ルールが一致する回数を確認できます。 レポートにルールを含める場合、ルールに [重大度 ] 値 [ 監査しない ] を指定することはできません (他のすべての値は OK です)。 レポートをオンラインで表示したり、レポート データを .csv ファイルにダウンロードしたりできます。

注:

レポート内のほとんどのデータは 24 時間以内のものですが、表示されるまでに 5 日かかるデータもあります。

  1. https://admin.exchange.microsoft.comの EAC で、[レポート>メール フロー] に移動します。 または、[ メール フロー レポート ] ページに直接移動するには、 https://admin.exchange.microsoft.com/#/reports/mailflowreportsmainを使用します。
  2. [ メール フロー レポート ] ページで、[ Exchange トランスポート ルール レポート] を見つけて選択します。

レポートの詳細については、「 Exchange Online の新しい Exchange 管理センターの Exchange トランスポート ルール レポート」を参照してください。

Exchange Online でメール フロー ルール コレクションをインポートまたはエクスポートする

Exchange Online PowerShellExport-TransportRuleCollection コマンドレットを使用して、組織内のすべてのメール フロー ルールを XML ファイルにエクスポートします。 詳細については、「 Export-TransportRuleCollection」を参照してください。

Import-TransportRuleCollection コマンドレットは、Exchange Online PowerShell から非推奨になります。 Exchange Online PowerShell でメール フロー ルール コレクション XML ファイルを手動でインポートするには、次の手順を実行します。

  1. Export-TransportRuleCollection コマンドレットを使用して、既存のすべてのメール フロー ルールをバックアップします (次の手順では、Import-TransportRuleCollection コマンドレットと同様に、既存のすべてのメール フロー ルールを削除します)。 例:

    $file = Export-TransportRuleCollection
    
    [System.IO.File]::WriteAllBytes('C:\MailFlowRuleCollections\BackupRuleCollection.xml', $file.FileData)
    
  2. 次のコマンドを実行して、組織内のすべての既存のメール フロー ルールを削除します。

    Get-TransportRule | foreach {Remove-TransportRule $_.Guid -Confirm:$false}
    
  3. 次のテキストをメモ帳にコピーします。

    if ((Get-TransportRule).Count -ne 0)
    
    {
       Write-Host "Please remove your current mail flow rules first."
    
        return
    }
    
    [xml]$xml = Get-Content "C:\MailFlowRuleCollections\RuleCollectionToImport.xml"
    
    $rulesToImport = $xml.SelectNodes("//rules/rule")
    
    if ($rulesToImport.Count -eq 0)
    
    {
        Write-Host "There are no mail flow rules to be imported."
    
        return
    }
    
    Write-Host "Importing $($rulesToImport.Count) mail flow rules."
    
    $index = 0
    
    foreach ($rule in $rulesToImport)
    
    {
        $index++
    
        Write-Host "Importing rule '$($rule.Name)' $index/$($rulesToImport.Count)."
    
        Invoke-Expression $($rule.version.commandBlock.InnerText) | Out-Null
    }
    
  4. 次の行を、インポートするメール フロー ルール XML コレクションのパスとファイル名で更新します。

    [xml]$xml = Get-Content "C:\MailFlowRuleCollections\RuleCollectionToImport.xml"
    
  5. ファイルを .ps1 として、見つけやすい場所 (たとえば、 C:\Data\Import-Rules.ps1) に保存します。

  6. PowerShell で、次の構文を使用してスクリプトを実行します。

    & "<Path to script file>\<FileName>.ps1"
    

    例:

    & "C:\Data\Import-Rules.ps1"
    

サポートが必要な場合

Exchange Online のメール フロー ルール (トランスポート ルール)

Exchange Online のメール フロー ルールでの条件と例外 (述語)

Exchange Online でのメール フロー ルールの処理

ジャーナル、トランスポート、受信トレイのルール上の制限