This has serious security and privacy implications, and is subjected to legal costraints in many countries; this is the reason this is not doable by default: even the most high-privileged administrator can't by default access other people's mailboxes.
Now, if you really need to do this, and if you are authorized by your company, let's go to the technical side of it.
Exchange-related informations are stored in Active Directory objects, which come with built-in Access Control Lists (ACLs) like everything else in AD; at the root of Exchange-related object hierarchy is the Exchange Organization, which contains many things, amongst which are administrative groups, routing groups, servers and finally mailbox stores (databases); all of these objects inherits some ACLs from parent objects, and all of them inherits root-level ACLs from the Organization object. This is important for your question because this is where two very important permissions are set for the whole organization:
- Full control over everything is given to Enterprise Admins and almost-full control is given to Domain Admins.
- Access to other user's mailbox contents and permission to send messages as other users is explicitly denied to those two groups.
These two settings seem to contradict themselves, but if you look at them for a while, the logic becomes quite obvious: these two groups of users need elevated permissions in order to manage Exchange, but those permissions would give them access to other user's mailboxes; so this type of access is explicitly denied.
In order to allow what you want, you need to remove this explicit denial at the organization level; then, members of the Enterprise Admins or Domain Admins groups will be able to open other users' mailboxes.
This is made even more difficult by the fact that you can't by default directly edit the ACL of the Exchange Organization object (and of many other Exchange-related objects); there are however some ways to do this, but they involve using non-standard tools like ADSIEdit or the Services node in the Active Directory Sites and Services MMC (under which you can find the Exchange-related AD object tree).
The easiest solution is to allow editing of ACLs in the Exchange System Manager; in order to do this, you should modify a Registry key, as stated here: go to
HKCU\Software\Microsoft\Exchange\ExAdmin, create a new DWORD value called
ShowSecurityPage and set it to 1. Now launch the ESM, right-click on the top-level object (which has the name of your Exchange Organization), view its properties and you should be able to see and modify its ACLs. If you remove the explicit deny settings applied to Enterprise Admins and Domain Admins, you should be able to access everything when using an administrative account. You can also of course apply more refined settings, and also edit ACLs on lower-level objects (such as administrative groups, servers and databases) and assign permissions to specific users or groups; but you should study the existing ACLs very carefully before doing that, or you are at a serious risk of breaking something.
N.B. Things are somewhat different in Exchange 2007/2010, but the same basic concept remains: administrative users are by default denied access to other users' mailboxes.