手順
1. PowerShell を管理者として起動
左下の「スタートボタン(Windowsマーク)」をクリックします。
「アプリ、設定、ドキュメントの検索」の欄に「Windows PowerShell」と入力します。

「管理者として実行する」をクリックします。
もし、「このアプリがデバイスに変更を加えることを許可しますか?」と聞かれたら
「はい(Y)」をクリックしてください。
これで、PowerShellが管理者権限で開きます。
PS C:\Windows\system32>と文字が表示されていれば成功です。

2. Exchange Online Management モジュールのインストール
以下のコマンドを実行します。
Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser
以下のようなメッセージが出た場合、「A」を入力し、Enterキーを押してください。
------------------------------------------------------------------------------------------------
信頼されていないリポジトリ
信頼されていないリポジトリからモジュールをインストールしようとしています。このリポジトリを信頼する場合は、Set-PSRepository コマンドレットを実行して、リポジトリの
InstallationPolicy の値を変更してください。'PSGallery' からモジュールをインストールしますか?
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): A
------------------------------------------------------------------------------------------------
3. Exchange Onlineに接続
以下のコマンドを実行します。
Connect-ExchangeOnline -UserPrincipalName テナント管理者アカウントのメールアドレス
例:Connect-ExchangeOnline -UserPrincipalName hogehoge@aaa.co.jp
初回接続時には、Microsoft アカウントでのサインインが求められるので、テナント管理者アカウントでサインインします。

4. Get-InboxRuleの実行
以下のコマンドを実行します。
Get-InboxRule -Mailbox 確認したいアカウントのメールアドレス
※アカウントは前提条件に記載の通り、管理者と同じテナントに存在するアカウントを指定してください。(例えば他社のドメインのアカウント等は指定できません。)
以下実行結果

ただ、この結果だと以下の情報しか見えません。

仕分けルールの内容を確認するには先ほど実行したコマンドを以下のように修正します。
Get-InboxRule -Mailbox 確認したいアカウントのメールアドレス | Format-table Name, Description -AutoSize -wrap
実行結果

※「Description」は仕分けルールの設定内容(=仕分けの条件)になります。
今回だと、指定のユーザーのメールアカウントで設定している仕分けルールの名前と設定内容を出力しています。
5. Get-InboxRuleの結果をCSV形式で出力する
出力した結果をCSV形式で保管するには事前に出力先のフォルダを作成した上で、以下のコマンドを実行し、出力します。
Get-InboxRule -Mailbox 確認したいアカウントのメールアドレス | Export-Csv -NoTypeInformation -Encoding UTF8 -Path "出力先フォルダのフォルダパス\任意のファイル名.csv"
例:
Get-InboxRule -Mailbox hogehoge@xxx.co.jp | Export-Csv -NoTypeInformation -Encoding UTF8 -Path "C:\temp\Get-InboxRule.csv"
※すでに同一のファイルが出力先のパスに存在した場合は上書きされます。
おまけ:RuleIdentityとは?
仕分けルールは一つ一つ、内部で一部の識別子を持っています。
同じ名称の仕分けルールでもこのRuleIdentityの値が異なります。
例:
以下同じ名称のルールがあります。

Get-InboxRuleのコマンド結果

上記のように同じ名前の仕分けルールでもRuleIdentityの値が異なるので
厳密には別物であることがわかります。
例えば以下のように、RuleIdentityで指定して同名の仕分けルールでも
消したいルールを的確に指定が可能です。
Get-InboxRule -Mailbox hogehoge@aaa.co.jp | Where-Object {$_.RuleIdentity -eq "11837665046018654209"} | Disable- Remove-InboxRule
まとめ
いかがだったでしょうか。
今後も様々なトラブルシューティングをはじめとした、事例や対処についてご紹介していく予定ですので
よろしければまた当ブログをご覧いただければ幸いです。
----------------------------------------------------------------------------------------
本ページには主に、弊社にて実施した作業や調査の結果を記載しています。
記載する情報には、正確かつ最新の内容を記載するよう努めておりますが、同様の結果や情報の正当性を保証するものではありません。
本ページの情報を利用したことにより、万が一何らかの問題や損失が発生した場合でも、一切の責任を負いかねます。
----------------------------------------------------------------------------------------

MAIL


概要
こんにちは!ペンネーム「RM」です。
ヘルプデスク対応に伴う、トラブルシューティング等で特定のユーザーの仕分けルールを確認する場合、ユーザーのPC画面を直接見るorキャプチャを取得いただいて確認するなどが挙げられます。ただ、このやり方ですと双方に負担が生じてしまいます。
弊社にて仕分けルール関連の問い合わせを受けた際に実施した、特定のユーザーの仕分けルールをコマンドおよびファイルで出力を行った事例を以下に記載いたします。
■前提条件
・仕分けルールを確認するメールアドレス(アカウント)がMicrosoft 365上に存在かつ、同テナントに存在すること
・当該テナントの管理者アカウントの資格情報を持っている事
※ここで言う資格情報は管理者アカウントのメールアドレスとパスワードになります。