Within Exchange (on-premise or Online) it’s sometimes helpful to export the delegate permissions that a user can set within their mailbox. Get-MailboxFolderPermission is the cmdlet which will export that information for a particular folder. The identifier needs to be in the format “email@example.com:\Marketing\Reports”.
That said there’s not an easy way to export the permissions on ALL folders within a mailbox and the output for that command isn’t very helpful for further processing.
So; script. It’ll take a mailbox as a parameter and output the permissions on all the mailbox folders (and subfolders) as objects.
I wrote a post about the initial version of the script and how it works in Part 1 here.
The first update, allowing the function to deal with special folders and the root better is here (Part 2).
I’ve also made the script stand-alone now (rather than a function). So just save this as a .ps1 file and run it with the MailboxToProcess parameter and it will work.
Hi. Last week a customer asked me find out which mailboxes had eaten all the pies on a particular Exchange server; getting a list of the largest mailboxes and whether they were in a disconnected state (already removed and waiting purge).
IT projects past a certain size get quite complex. They have a lot of moving parts and often those parts have to be aligned correctly and at the right time to make everything work. In turn, that means you need the various people to pull together to make sure the project as a whole delivers. Sometimes the team doesn’t succeed but normally everyone is pulling in the same direction. There is no “I” in team! Etc Etc
There are exceptions. In one place I worked the IT departments were actively trying to push each other under a bus. Think ‘Game Of Thrones’ with RAID arrays.