Exchange Online のメール フロー ルールを管理する
Exchange Online メールボックスを持たないExchange Online組織またはスタンドアロン Exchange Online Protection (EOP) 組織では、Exchange メール フロー ルール (トランスポート ルールとも呼ばれます) を使用して、organizationを通過するメッセージに関する特定の条件を検索できます。アクションを実行します。
この記事では、ルールの 作成、 コピー、 順序の調整、 ルールの有効化または無効化、 削除、 インポートまたはエクスポート 、ルール の使用状況の監視を行う方法について説明します。
ヒント
ルールが期待どおりに動作するようにするには、各ルールとルール間の相互作用を十分にテストしてください。
これらの手順を使用するシナリオに関心がありますか? Exchange Onlineの「メール フロー ルールの手順」を参照してください
はじめに把握しておくべき情報
各手順の推定完了時間:5 分。
Exchange 管理センター (EAC) へのアクセス方法については、「Exchange Online の Exchange 管理センター」を参照してください。 Exchange Online PowerShell へ接続するには、「Exchange Online PowerShell に接続する」を参照してください。 スタンドアロン EOP PowerShell に接続するには、「スタンドアロン Exchange Online Protection PowerShell に接続する」を参照してください。
これらの手順を実行する際には、あらかじめアクセス許可を割り当てる必要があります。 必要なアクセス許可を確認するには、「Exchange Onlineの機能のアクセス許可」の「メール フロー」エントリを参照してください。
この記事の手順に適用されるキーボード ショートカットの詳細については、「 Exchange 管理センターのキーボード ショートカット」を参照してください。
ヒント
問題がある場合は、 Exchange のフォーラムで質問してください。 次のフォーラムにアクセスしてください: 「Exchange Online」または「Exchange Online Protection」。
メール フロー ルールの作成
メール フロー ルールは、EAC または PowerShell で作成できます。 EAC では、既存のルールをコピーしてメール フロー ルールを作成することもできます。
注:
メール フロー ルールを作成またはコピーした後、新しいルールがメールに適用されるまでに 30 分以上かかる場合があります。
EAC を使用してメール フロー ルールを作成する
EAC を使用すると、テンプレートを選択するか、最初から開始することで、メール フロー ルールを作成できます。
の新しい EAC でhttps://admin.exchange.com、[メール フロー>ルール] に移動します。 または、[ ルール] ページに直接移動するには、 を使用 https://admin.exchange.microsoft.com/#/transportrulesします。
[ ルール ] ページで、次のいずれかのオプションを使用してルールを作成します。
- テンプレートからルールを作成するには、[Add a rule
\(ルールの追加アイコン\) を選択し、ドロップダウン リストからテンプレートを選択します。
- 新しいルールを最初から作成するには、[ルールの追加
の順に選択します。>新しいルールを作成します。
- テンプレートからルールを作成するには、[Add a rule
新しいルール ウィザードが開きます。 [ ルール条件の設定 ] ページで、[ 名前 ] ボックスにルールの一意の名前を入力し、ルールの条件、例外、およびアクションを選択します。
このルールを if...: 一覧から条件を選択します。
- 一部の条件では、他の値が必要です。 たとえば、[ 送信者は...] を選択した場合は、送信者アドレスも指定する必要があります。 単語または語句を追加する場合、末尾のスペースは許可されません。
- さらに条件を追加するには、[ Add condition
\) を選択し、この手順を繰り返します。
- [ 条件の削除]
して、条件を削除します。
- organization内のすべてのメッセージに適用するには、[すべてのメッセージに適用] 条件を選択します。
次の操作を行います。..: 一覧からアクションを選択します。
- 一部のアクションには、他の値が必要です。 たとえば、[承認のためにメッセージを転送する]を選択した場合は、organizationで受信者を選択する必要があります。
- さらにアクションを追加するには、[アクションの
の順に選択し、この手順を繰り返します。
- [ アクションの削除]
して、アクションを削除します。
if...: ルールに対する例外を指定するには、この設定を使用します。 使用可能な例外は、使用可能な条件と同じです。
- 一部の例外では、他の値が必要です。 たとえば、[ 送信者は...] を選択した場合は、送信者アドレスも指定する必要があります。 単語または語句を追加する場合、末尾のスペースは許可されません。
- さらに例外を追加するには、[ Add exception
) を選択し、この手順を繰り返します。
- [ 例外の削除]
して、例外を削除します。
[ ルールの条件の設定 ] ページが完了したら、[ 次へ] を選択します。
[ ルール設定の設定 ] ページで、次の設定を構成します。
ルール モード: 次のいずれかの値を選択します。
- 適用: ルールを有効にし、メッセージの処理を直ちに開始します。 ルールに対するすべてのアクションが実行されます。
- ポリシー ヒントを使用したテスト: ルールを有効にし、ポリシー ヒントアクション ( ポリシー ヒントを使用して送信者に通知) が送信されますが、メッセージ配信に関連するアクションは実行されません。
- ポリシー ヒントなしでテストする: [インシデント レポートの生成] アクション のみが適用されます。 メッセージ配信に関連するアクションは実行されません。
重大度: このルールの重大度レベルを選択します。 ルールの一致は、アクティビティ レポートの重大度レベル別にグループ化されます。 重大度レベルは、レポートを使いやすくするためのフィルターにすぎません。 重大度レベルは、ルールが処理される優先順位には影響しません。
- 指定なし
- 低
- [ Medium]
- High
- 監査なし: ルールの一致はルール レポートに表示されません。
[このルールを有効にする ] と [このルールを非アクティブ化する] をオンにする: これらの設定を使用して、特定の期間のルールのオンとオフを切り替えます。 日付に このルールをアクティブ化する前にルール を作成した場合、ルールは有効になりますが、処理されません。 日付に このルールを非アクティブ化 した後、ルールは有効のままですが、処理されません
他のルールの処理を停止する: この設定を使用して、このルールの後に追加のルールがメッセージに適用されないようにします。 このルールによってメッセージが処理された場合、そのメッセージに対して後続のルールは処理されません。
ルール処理が完了しない場合はメッセージを延期する: ルール処理を完了できない場合のメッセージの処理方法を指定します。 既定では、ルールは無視され、他のルールによるメッセージの処理は続行されます。 このオプションを選択すると、処理のためにメッセージが再送信されます。
メッセージ内の送信者アドレスの一致: 送信者のメール アドレスを検査する条件または例外によって評価される電子メール アドレスを指定します。
- ヘッダー: メッセージ ヘッダーのみが検査されます。
- エンベロープ: SMTP メッセージ エンベロープのみが検査されます。
- ヘッダーまたはエンベロープ: メッセージ ヘッダーと SMTP メッセージ エンベロープの両方が調べられます。
コメント: ルールにオプションのコメントを追加します。
[ ルール設定の設定 ] ページが完了したら、[ 次へ] を選択します。
[ 確認と完了 ] ページで、設定を確認します。 [ 戻る ] を選択するか 、[ルールの条件の編集] リンクまたは [ルール設定の編集] リンクを使用して設定を変更します。
[ 確認と終了 ] ページが完了したら、[完了] を選択 します。
確認ページで、[完了] を選択 します。
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 を使用してメール フロー ルールをコピーする
の新しい EAC でhttps://admin.exchange.com、[メール フロー>ルール] に移動します。 または、[ ルール] ページに直接移動するには、 を使用 https://admin.exchange.microsoft.com/#/transportrulesします。
[ ルール ] ページで、[ 状態 ] の横に表示される丸いチェック ボックスをオンにしてルールを選択し、表示される [コピー
の複製] アクションを選択します。
開 いた [<ルール名>] ポップアップのコピーを作成 すると、[ 条件 ] タブと [設定] タブの値に、コピーしたルールの設定が入力されます。 既定の名前は[ ルール名の <コピー]です>。 任意のルール設定を変更できます。 使用可能な設定は、「EAC を使用してメール フロー ルールを作成する」セクションで説明されているように、新しい ルールの作成と 同じです。
ルールの設定の編集が完了したら、ポップアップの下部にある [ コピーの作成 ] を選択します。
開いた確認ポップアップで、[複製] を選択 します。
開いた成功ポップアップで、[ X を閉じる] を選択します。
メール フロー ルールが正常に作成されたことを知る方法
メール フロー ルールが正常に作成されたことを確認するには、次のいずれかの手順を実行します。
の EAC の [ ルール ] ページで https://admin.exchange.microsoft.com/#/transportrules、作成またはコピーしたメール フロー ルールが一覧表示されていることを確認します。
PowerShell Exchange Onlineで、新しいルール名>を作成またはコピーしたルールの名前に置き換え<、次のコマンドを実行します。
Get-TransportRule -Identity "<New Rule Name>""
メール フロー ルールを表示または変更する
注:
メール フロー ルールを変更した後、更新ルールがメールに適用されるまでに 30 分以上かかる場合があります。
EAC を使用してメール フロー ルールを表示または変更する
- の新しい EAC でhttps://admin.exchange.com、[メール フロー>ルール] に移動します。 または、[ ルール] ページに直接移動するには、 を使用 https://admin.exchange.microsoft.com/#/transportrulesします。
- [ ルール ] ページで、名前の横にあるラウンド チェック ボックス以外の行の任意の場所をクリックして、一覧からルールを選択します。
- 開いた詳細ポップアップで、ポップアップの上部にある [ ルール条件の編集 ] と [ルール設定の編集] を選択して、既存の 設定 を確認し、変更を加えることができます。 使用可能な設定は、「EAC を使用してメール フロー ルールを作成する」セクションで説明されているように、新しい ルールの作成と 同じです。
Exchange Online PowerShell を使用してメール フロー ルールを表示または変更する
次の使用例は、organization内のすべてのメール フロー ルールの概要リストを返します。
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 の [ ルール ] ページで https://admin.exchange.microsoft.com/#/transportrules、[ 状態 ] 値の横にあるラウンド チェック ボックス以外の行の任意の場所をクリックして変更したルールを選択します。 開いた詳細ポップアップで、設定を確認します。
PowerShell Exchange Onlineで、Rule Name を>変更したルールの名前に置き換え<、次のコマンドを実行します。
Get-TransportRule -Identity "<Rule Name>" | Format-List Name,ExceptIfFrom
メール フロー ルールの優先順位を設定する
EAC の [ ルール ] ページには、メール フロー ルールが処理された順序で表示されます。 一覧の上部にあるルールの 優先度 の値は 0 で、最初に処理されます。
EAC を使用してルールの優先順位を設定する
の新しい EAC でhttps://admin.exchange.com、[メール フロー>ルール] に移動します。 または、[ ルール] ページに直接移動するには、 を使用 https://admin.exchange.microsoft.com/#/transportrulesします。 2. [ ルール ] ページで、[ 状態 ] の横にある丸いチェック ボックスをオンにしてルールを選択し、[ 上へ移動 ] または [下へ 移動 ] アクションを選択して、ルールを一覧の上下に移動します。
PowerShell Exchange Online使用してルールの優先順位を設定する
次の使用例は、指定したメール フロー ルールの優先順位を 2 に設定します。
Set-TransportRule -Identity "Sender is a member of Marketing" -Priority "2"
詳細な構文およびパラメーターの情報については、Set-TransportRule を参照してください。
メール フロー ルールの優先順位が正常に設定されたことを確認する方法
メール フロー ルールの優先度が正常に設定されたことを確認するには、次のいずれかの手順を実行します。
EAC の [ ルール ] ページで https://admin.exchange.microsoft.com/#/transportrules、ルールの順序を確認します。
PowerShell Exchange Onlineで、次のコマンドを実行します。
Get-TransportRule | Format-List Name,Priority
メール フロー ルールを有効または無効にする
EAC では、ルールは作成時に有効になります。 ルールを作成した後でルールを無効にして、ルールがメッセージに影響を与えずにルール設定を保持できます。
EAC を使用してメール フロー ルールを有効または無効にする
の新しい EAC でhttps://admin.exchange.com、[メール フロー>ルール] に移動します。 または、[ ルール] ページに直接移動するには、 を使用 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 の [ ルール ] ページで https://admin.exchange.microsoft.com/#/transportrules、[ 状態 ] 列の値を確認します。
PowerShell Exchange Onlineで、次のコマンドを実行して、organization内のすべてのルールとその状態値の一覧を返します。
Get-TransportRule | Format-Table Name,State
メール フロー ルールを削除する
EAC を使用してメール フロー ルールを削除する
- の新しい EAC でhttps://admin.exchange.com、[メール フロー>ルール] に移動します。 または、[ ルール] ページに直接移動するには、 を使用 https://admin.exchange.microsoft.com/#/transportrulesします。
- [ルール] ページで、[状態] の横にある丸いチェック ボックスをオンにしてルールを選択し、表示される [削除]
を選択します。
- 開いた確認ポップアップで、[確認] を選択 します。
PowerShell Exchange Online使用してメール フロー ルールを削除する
次の使用例は、指定したメール フロー ルールを削除します。
Remove-TransportRule -Identity "Sender is a member of marketing"
構文とパラメーターの詳細については、「Remove-TransportRule」を参照してください。
メール フロー ルールが正常に削除されたことを知る方法
メール フロー ルールが正常に削除されたことを確認するには、次のいずれかの手順を実行します。
の EAC の [ ルール ] ページで https://admin.exchange.microsoft.com/#/transportrules、削除したルールが一覧に表示されていないことを確認します。
PowerShell Exchange Onlineで、次のコマンドを実行し、削除したルールが一覧に表示されていないことを確認します。
Get-TransportRule
ルールの使用状況を監視する
新しい EAC の Exchange トランスポート ルール レポートを使用して、各ルールが一致する回数をチェックできます。 レポートに含めるために、ルールに [重大度] 値 [ 監査しない ] を指定することはできません (他のすべての値は OK です)。 レポートをオンラインで表示したり、レポート データを .csv ファイルにダウンロードしたりできます。
注:
レポート内のほとんどのデータは 24 時間以内のものですが、表示されるまでに 5 日かかるデータもあります。
- の新しい EAC でhttps://admin.exchange.com、[レポート] [メール フロー] に移動します>。 または、[ メール フロー レポート ] ページに直接移動するには、 を使用 https://admin.exchange.microsoft.com/#/reports/mailflowreportsmainします。
- [ メール フロー レポート ] ページで、[ Exchange トランスポート ルール レポート] を見つけて選択します。
レポートの詳細については、Exchange Onlineの新しい Exchange 管理センターの Exchange トランスポート ルール レポートに関するページを参照してください。
Exchange Onlineでメール フロー ルール コレクションをインポートまたはエクスポートする
Exchange Online PowerShell の Export-TransportRuleCollection コマンドレットを使用して、organization内のすべてのメール フロー ルールを XML ファイルにエクスポートします。 詳細については、「 Export-TransportRuleCollection」を参照してください。
Import-TransportRuleCollection は、Exchange Online PowerShell から非推奨になります。 PowerShell でメール フロー ルール コレクション XML ファイルExchange Online手動でインポートするには、次の手順を実行します。
Export-TransportRuleCollection コマンドレットを使用して、既存のすべてのメール フロー ルールをバックアップします (次の手順では、Import-TransportRuleCollection コマンドレットと同様に、既存のすべてのメール フロー ルールを削除します)。 例:
$file = Export-TransportRuleCollection [System.IO.File]::WriteAllBytes('C:\MailFlowRuleCollections\BackupRuleCollection.xml', $file.FileData)
次のコマンドを実行して、organization内のすべての既存のメール フロー ルールを削除します。
Get-TransportRule | foreach {Remove-TransportRule $_.Guid -Confirm:$false}
次のテキストをメモ帳にコピーします。
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 }
次の行を、インポートするメール フロー ルール XML コレクションのパスとファイル名で更新します。
[xml]$xml = Get-Content "C:\MailFlowRuleCollections\RuleCollectionToImport.xml"
ファイルを見つけやすい場所 (たとえば
C:\Data\Import-Rules.ps1
) に .ps1 として保存します。PowerShell で、次の構文を使用してスクリプトを実行します。
& "<Path to script file>\<FileName>.ps1"
例:
& "C:\Data\Import-Rules.ps1"
サポートが必要な場合
Exchange Online のメール フロー ルール (トランスポート ルール)
Exchange Online のメール フロー ルールでの条件と例外 (述語)