Up to Exchange 2003, ExMerge was widely regarded as one of the most popular applications within the Exchange Tools arsenal. Thus many were surprised to find that Exchange 2007 did not immediately include an ExMerge update. Instead, an alternative providing similar functionality was scheduled for inclusion with Exchange 2007 SP1. This fueled a little uproar, with some considering this omission a valid reason for postponing Exchange 2007 adoption.
The truth is that ExMerge does work with Exchange 2007. You don't even need an Exchange 2000/2003 server within the Organization! Today I will show you how to get ExMerge working both in case of an upgrade from Exchange 2000/2003 and in case of a fresh Exchange 2007 installation.
Initial ExMerge Installation Steps
In Meeting the ExMerge Requirements, we installed ExMerge on Windows XP/2000 to run against Exchange 2000/2003. The procedure for Exchange 2007 is very similar and I will refer you to various parts of this article.
In earlier Exchange versions it was possible to run ExMerge directly on the Exchange server machine. However this is not the case with Exchange 2007. Here we will employ the ExMerge included with the Exchange 2003 Tools and this cannot be mixed with Exchange 2007. Thus we will again install ExMerge on a separate Windows XP machine.
There is nothing new with the installation of ExMerge itself. We can simply follow the steps described in Meeting the ExMerge Requirements. Just read through the first page of this article including the headings Installing the Exchange System Management Tools and Install ExMerge. Yes we need to install the Exchange 200x System Management Tools. Although we don't need a running Exchange 2000/2003 server this component is necessary to satisfy the ExMerge dependencies.
I performed this procedure on a fresh domain where no earlier Exchange version was ever installed. Because of this on installing the System Management Tools a warning popped reporting that the Schema was never extended for Exchange 2003. If you get this just ignore it.
Configuring Permissions
Following the installation, the user account to be running ExMerge must be assigned the necessary rights. Here is where the procedure differs from that described in our earlier article. We still need to delegate the user with 'Exchange View Only Administrator' role. We also need to give the user SendAs and ReceiveAs permissions over the mailbox store. However these steps must now be done on the Exchange 2007 box.
So here are the steps taken from Meeting the ExMerge Requirements but updated for Exchange 2007:
On the XP/2000 Pro machine the user account only requires to be a Standard User (Power User Group).
To set the rights, at the server we first create a security group to hold all user accounts running ExMerge. We will call this group ExMerge to be consistent with the MS support articles. Once created, add the user account(s) to its membership list.
Note: At this stage it is easier to work with accounts that have no Administrative role in Exchange. This helps us avoid hitting into issues related to permission inheritance that too often cause confusion.
-
At the Exchange Server, delegate 'Exchange View Only Administrator' control to the newly created security group.
Unless we do this, ExMerge would fail on enumerating the private information stores and would return an error saying: "Error getting list of private information store databases on server..."
Open the Exchange 2007 Management Console and select 'Organization Configuration'
At the right-hand Action pane, click on 'Add Exchange Administrator'
Click on Browse to select the ExMerge security group.
Select 'Exchange View-Only Administrator role' as the role to be assigned.
Complete the wizard and ExMerge will now be added to the list of administrators.
Alternatively we could have done all this in a single command-shell step using Add-ExchangeAdministrator as follows:
Add-ExchangeAdministrator -Identity 'vert.local/Users/ExMerge' -Role 'ViewOnlyAdmin'
At this point we should be able to logon to the Windows XP machine with the user account intended for running ExMerge. We should be able to open the Exchange System Manager and browse the Exchange organization. In my case I was unable to do this until the Exchange 2007 machine was restarted. However it is worth trying this immediately in order to avoid any downtime. The following screen shots show how the Windows XP ESM looked like before and after the Exchange View-Only Administrator role took effect.
-
Next we give the ExMerge security group SendAs and ReceiveAs permissions on the Mailbox Store. We do this from the Exchange 2007 Shell through the following command:
Get-MailboxDatabase -identity "BANG\First Storage Group\Mailbox Database" | Add-ADPermission -user "Vert\ExMerge" -ExtendedRights Receive-As, Send-As
Here we are piping the results of Get-MailboxDatabase to Add-ADPermission. The database identity was in this case:
"BANG\First Storage Group\Mailbox Database"
BANG is the Exchange 2007 server name.
Add-ADPermission is fed with the account (Vert\ExMerge) for which the extended rights Receive-As and Send-As are to be set.
Running successfully this command should return:
Final Tips
We are now set to run ExMerge against Exchange 2007. This procedure can be applied to installations where no earlier Exchange version was ever installed. However the Exchange 2000/2003 System Management Tools are still necessary to satisfy the ExMerge dependencies.
Exchange 2007 SP1 will bring the Import-Mailbox and Export-Mailbox cmdlets. These should provide a native ExMerge replacement. Although I can imagine that some will still keep on using ExMerge for its UI. Details on these cmdlets were posted on the MS Exchange Team blog in How to Export and Import mailboxes to PST files in Exchange 2007 SP1.
References
Meeting the ExMerge Requirements
How to Delegate Server Administration
Planning and Implementing a Split Permissions Model
How to Export and Import mailboxes to PST files in Exchange 2007 SP1