PowerShell is the tool you need to list all inbox rules of all users in your environment. In this blog post I will show how to connect to Exchange Online to afterwards retrieve all outlook inbox rules created by the user. Let’s dive in.
Connect to Microsoft 365 / Exchange Online
First we need to connect to our tenant. Run the commands below to open a PowerShell session to your Microsoft cloud.
Install-Module -Name ExchangeOnlineManagement -Force -AllowClobber Connect-ExchangeOnline -UserPrincipalName user@domain.com -ShowProgress $true
Fine. Let’s move on.
List Inbox Rules from all users
We are now ready to get a list of all rules created by the user. Run the command below to get them all.
Get-ExoMailbox -ResultSize Unlimited | Select-Object -ExpandProperty UserPrincipalName | Foreach-Object {Get-InboxRule -Mailbox $_ | Select-Object -Property MailboxOwnerID,Name,Enabled,From,Description,RedirectTo,ForwardTo}
Here they are (Rules in German):

See you next time with PowerShell!
Categories: Microsoft 365, PowerShell
Excellent, thank you!
LikeLiked by 1 person
hello to everyone
how i can to save the results in atxt file or an html or csv ??
useful script !!
LikeLike
Use Out-File. Best
LikeLike
Hi Patrick,
Many Thanks for your Script.
It was very helpful for me.
How can I select or read the “ForwardingSMTPAddress” or the external destination email address of the user inbox rules.
Thanky and best wishes
Patan
LikeLiked by 1 person
Thank you. Here you go: https://sid-500.com/2020/09/08/office-365-list-all-outlook-inbox-rules-created-by-the-user/
LikeLike