Skip to content

Delegated Mailbox Access

The question it answers: Who has Full Access, Send As or Send on Behalf rights on which mailbox?

Where in the appExchange Online › Security › Delegated Mailbox Access
WorkloadExchange Online
KindTable
DataA scan: it runs only when someone presses Run scan (or calls the API’s scan action) and can take minutes. The last result is kept until the next scan. It reads through PowerShell (Exchange Online or SharePoint Online), so the first load takes longer than a Graph report.
LicenceExchange Online.
Report id (API and MCP)exchange.security.exchange-online-mailbox-delegation-settings
ColumnKeyType
MailboxUserPrincipalNameText
Mailbox Smtp AddressPrimarySmtpAddressText
Mailbox Directory Object IdExternalDirectoryObjectIdText
Delegate User UPNDelegateUserUPNText
Delegate (as Exchange lists it)DelegateUserText
Delegate User Object IdDelegateUserIDText
Access RightsAccessRightsText
Is InheritedIsInheritedYesNo

Licence: Exchange Online.

Application permissions on the IntensiveReports app registration (all permissions):

PermissionAPIWhat it allowsNote
Exchange.ManageAsAppOffice 365 Exchange OnlineManage Exchange As ApplicationOffice 365 Exchange Online API
Data sources it reads
  • Get-EXOMailbox -Properties GrantSendOnBehalfTo
  • Get-EXOMailboxPermission (per mailbox)
  • Get-EXORecipientPermission (per mailbox)
  • Get-EXORecipient
GET /ir-api/v1/reports/exchange.security.exchange-online-mailbox-delegation-settings?size=100
POST /ir-api/v1/reports/exchange.security.exchange-online-mailbox-delegation-settings/scan

An AI assistant reads it with the MCP tool get_report and the id exchange.security.exchange-online-mailbox-delegation-settings. The client needs the Run scan grant for Exchange Online. See Using the API.