When users leave, what is a good strategy for dealing with their mailboxes? Below is what I’ve found to be a good strategy. While some parts of it assume a Microsoft Exchange [2007] environment, it can be generalized.

  • Forward mail to a designated reviewer
    This forces mail destined for a former into the inbox of someone who should respond. An alternate approach of giving the reviewer ongoing access to the former employee’s mailbox requires active review, i.e. they have to mount the mailbox, and then periodically check it for new mail. How often will that happen? You don’t know, but if the new mail is directed to their inbox instead, the chances of it being overlooked are greatly reduced.
  • Export the mailbox to a read-only form. For Exchange, a PST file is perfect!
  • Assign access rights to the former employee’s mailbox for the designated reviewer
    This allows the reviewer to look through items in the mailbox, discard any remaining personal items, and leave any valuable content for archiving. This activity should be time-bounded.
  • Re-export the mailbox if necessary. The first export captures the mailbox state before the reviewer has access. This step, and the former, may not be necessary at all.
  • If further forwarding to the designated reviewer is desired, move the forwarding to your mail gateway, i.e. in your DMZ.
  • Finally, delete the mailbox, freeing up space in your mailbox store and a client access license.

So, how do you export a mailbox to a PST file? And how can you script this if you wait until you have several to do at one time?

  1. Create a CSV file listing all mailboxes with a heading in column one of “Mbox”. This could be done through scripting, even with text output which is later converted to a CSV file.
  2. Run a simple command from the Exchange Shell which uses this CSV file as input. An example is shown below, which assumes the name, location and heading name of the CSV file, and the output location for the PST files.

foreach ($MB in (Import-CSV C:\former-empl.csv)) { Export-Mailbox "$($MB.Mbox)" -PSTFolderPath X:\FormerEmployees\Mailboxes\ }

Note, this concept can be extended to manage the access rights for the mailbox too, if your CSV file contains the identity of the reviewer.