As discussed in the earlier blog post introducing the new Exchange 2007 console, the Exchange Management Console GUI has been completely redesigned in Exchange 2007. While redesigning the Exchange Management Console for Exchange 2007, we used specific ground rules to help guide what features and settings should be exposed in the console and how the console itself should be built. These guidelines allowed us to ensure that we had designed a rich, functional tool that wasn't overwhelming and complex. It also ensured a console where additional feature GUI could be added to respond more effectively to customer requests.
Exchange 2007 GUI Console Goals and Ground Rules
To meet these goals, we developed the following ground rules and reasoning:
Naturally, when moving from Exchange 2003 to the Exchange 2007 console using the above ground rules, there have been changes in what is exposed in the console. Those changes have led to some features being removed from the console GUI. The reasons for removing some specific GUI generally fall into one of the three following categories:
Exchange 2007 GUI Result
Based on these guidelines, we did an evaluation of all GUI available in Exchange 2003 and also took into consideration any GUI required for new Exchange 2007 features. Then we made some hard choices on what belonged in the new GUI console for Exchange 2007 and where these should be placed. The surprising outcome was that only a handful of features are completely removed from the GUI, and there's actually more (quantity) GUI exposed in Exchange 2007 than there was in Exchange 2003.
Think of it a bit like cleaning out your garage. When you start out, it's a huge mess and there's no room anywhere to hold even the stuff you've already got. But by the time you've reorganized everything more efficiently, you find there's suddenly room to hold the car again!
The table below lists the various GUI features that were removed for Exchange 2007 RTM. Please have a look through the list and let us know your opinion on the decisions we made. In particular, we'd love to know if you think we missed anything critical from Exchange 2003 GUI or if the mitigations seem insufficient to you.
GUI Feature Removed
Reason for Removal
Exchange Extensions to Active Directory Users & Computers
We needed to address the Exchange 2003 challenge of a poor, incomplete automation and provisioning user management story. To do this we rewrote all of our recipient management logic into cmdlets using PowerShell technology. Extending the unmanaged code MMC 2.1 Active Directory Users and Computers console with our managed MMC 3.0 cmdlet-based GUI would have left some functionality broken. Additionally, it would have meant continuing to require the use of two different tools for server and recipient management of your Exchange organization.
Recipient management is exposed in the Exchange 2007 Management Console
Exchange Management Shell Cmdlets made available through Powershell. An overview of the recipient cmdlets can be found here.
MMC built-in feature "new window from here" can be used to provide a limited view of Recipient Configuration Node for a custom console (See Tip #8 in this blog post)
IMAP and POP enable/disable on a Mailbox
IMAP and POP Virtual Directory
Not as common to manage as other client access protocols like Outlook Web Access or ActiveSync. This GUI is a good candidate to be added later based on customer request.
Exchange Management Shell Cmdlets:Get/Set-ImapSettingsGet/Set-PopSettingsSet-CASMailbox (enable/disable IMAP and POP on a mailbox)
Removal of hidden distribution group membership
Completely hidden membership is not supported by the Active Directory, so past implementations have had many issues and bugs.
Scripted approach which leverages Dynamic Distribution Groups and ACLing the custom property to exclude ability to look up membership.
Recovery Storage Group
In Exchange 2003, performing a disaster recovery on databases was a manual, complex process that had little end-to-end guidance for the administrator.
In Exchange 2007 a database recovery management tool has been added to the toolbox which provides step-by-step guidance and support in disaster recovery scenarios. Therefore, the exposure of the recovery storage group configuration in the main console is no longer required.
Content Indexing Management
Was not a commonly managed feature by most of our customers
Exchange Management Shell Cmdlets:IndexEnabled parameter on set-mailboxdatabase
Details Tab on property pages which included comments/created/etc.
Was not a commonly used feature by most of our customers
3rd party auditing/change tracking software
Modified time is on general property page
Move Address List GUI (to move the address list to a new position in the address list hierarchy)
Was not a commonly used feature by most of our customers
Exchange Management Shell Cmdlet:Move-Addresslist
In the GUI the address list can be deleted then recreated in place of move
Mailbox Statistics for an entire database
The Exchange management shell provides a native, rich reporting functionality that is exceedingly powerful and effective; thus it is the chosen method for information gathering in Exchange 2007.
Exchange Management Shell Cmdlet:Get-mailboxstatistics
General property page of an individual mailbox shows mailbox statistics for that mailbox
3rd party extension of Exchange management console
We first focused on management shell extensibility story before tackling console extensibility.
MMC3.0 has no support for extending context menu.
Build a separate snap-in
Public Folder Referral GUI
Public folder referrals are linked to routing groups which are no longer an Exchange 2007 concept, however there are mitigations for configuring referrals in an environment with mixed Exchange 2003/2000 and Exchange 2007 servers
Exchange Management Shell Cmdlet:Use the PublicFoldersEnabled parameter on New-RoutingGroupConnector Set-RoutingGroupConnector cmdlets to enable public folder referrals
Alternately, for mixed Exchange 2000/2003 and Exchange 2007 environments, use the Exchange 2003 management tools for this purpose.
Public folder statistics
Exchange Management Shell Cmdlet:Get-PublicFolderStatistics
Recipient Update Service GUI
No longer managed by admin, simply an API that is called into by cmdlets
None needed (and see the Goodbye RUS blog post for more details).
The Exchange 2003/2000 monitoring feature was very limited and has been removed.
This has been replaced by monitoring-specific cmdlets used either directly by the administrator or in combination with Microsoft Operations Manager
Export List in GUI
Use Exchange Management Shell cmdlets to perform reporting. Here is an example getting a report (CSV) on all mailbox databases for the server and only reporting on their name, quotas, and retention:get-mailboxdatabase | select-object name,mailboxretention,prohibitsendreceivequota,prohibitsendquota | export-csv c:\reports\dbquota.csv
ACL Picker (Security Tab)
ACL level permissions are an advanced scenario that are not commonly required by most of our customers.
Exchange Management Shell Cmdlets:Add/Get/Remove-ADPermissionAdd/Get/Remove-MailboxPermissionAdd/Get/Remove-PublicFolderClientPermissionAdd/Get/Remove-PublicFolderAdministrativePermission
Remove Server GUI
The scenarios for remove server are closely related to the setup experience and due to the highly destructive nature of removing an Exchange server it was removed from the console.
If the server is still operational choosing the uninstall option in setup will be sufficient. However if the server had run into problems and an uninstall will no longer work, an administrator can first use the "recover server" option and then uninstall to remove the server from Active Directory.
Global Address List GUI (new, modify, etc.)
Creating a new Global Address List or modifying the default was not a commonly used feature by most of our customers
Exchange Management Shell Cmdlets:New-GlobalAddressListRemove-GlobalAddressListSet-GlobalAddressList
Complex filtering for Address Lists, dynamic distribution groups, and E-mail Address Policies in GUI
In Exchange 2003/2000 the filter GUI for address lists, e-mail address policies, and dynamic distribution groups was incredibly complex with nested lists having hundreds of properties listed. In Exchange 2007 the most common filters are defined as "precanned filters" with an extremely simple and intuitive filter control to make this experience much easier for our customers to use. For the few companies that have advanced filtering requirements not met by the precanned filters, these "custom filters" can be defined using the OPATH filter syntax in the shell.
Exchange Management Shell Cmdlets for complex and "custom filters":Use the RecipientFilter parameter on new-addresslistset-addresslistnew-emailaddresspolicyset-emailaddresspolicynew-dynamicdistributiongroupset-dynamicdistributiongroup
Complex & hidden address generation (firstname.lastname) variables for SMTP address in E-mail Address Policies
In Exchange 2003/2000 administrators had to simply know the correct variables (%s.%g) used to generate the local part of the SMTP address as there was no indication in the GUI as to how to do this. Exchange 2007 introduces GUI to define address generation using the most common generation variable combinations. For more advanced requirements, administrators can define the proxy address template directly through the management shell.
Simply prepend the desired variable (%s.%g) as the local part of the SMTP e-mail address template when it is specified using the new-emailaddresspolicy or set-emailaddresspolicy cmdlets.
Public Folder Tree Management GUI
Providing solid bulk management story is crucial to public folders so investing in rewriting all of our public folder management logic as cmdlets was priority.
Exchange Management Shell Cmdlets:New-PublicFolderRemove-PublicFolderGet-PublicFolderSet-PublicFolderResume-PublicFolderReplicationSuspend-PublicFolderReplicationUpdate-PublicFolderUpdate-PublicFolderHierarchy
Exchange 2003 console against an Exchange 2003 public folder server can be used to manage the public folder hierarchy
There are good replacement features using Exchange 2007 management shell automation that cover the scenarios for Exchange 2000/2003 system policies
Use Exchange Management Shell cmdlets to perform bulk configuration. Example of modifying all mailbox databases to have an item retention of 4 days on ServerA:get-mailboxdatabase -server ServerA | set-mailboxdatabase -itemretention 4.00:00:00
Cloning can be used for new objects by specifying the TemplateInstance parameter
If consistent and periodic application of these settings are required, a script to apply these settings can be scheduled using OS scheduling functionality.
Protocol Virtual Server
In Exchange 2003/2000, ESM exposed various IIS specific protocol settings. These inconsistencies caused customer confusion about where to manage virtual server and virtual directory settings. In Exchange 2007 only Exchange specific settings on a virtual directory are exposed in the console and any virtual server settings required by Exchange are automatically set upon creation of virtual directories for the administrator.
IIS Manager should be used to manage the IIS concept of Virtual server
Delete/Create Outlook Web Access & ActiveSync virtual directories
Creating a new Outlook Web Access or ActiveSync virtual directory (beyond the default ones created by setup) is not a commonly used feature by most of our customers
Exchange Management Shell Cmdlets:New-OwaVirtualDirectoryNew-ActiveSyncVirtualDirectory
End to End SMTP Connector Wizard (Internet Mail Wizard)
By default in Exchange 2007 after setup the correct SMTP connectors are already created with smart defaults.
SMTP connectors created and configured automatically when Edge server is configured as a "subscribed Edge".
Did we get it right?
If you've made it all the way through that table, you're a trooper and we thank you! We've done lots of usability testing around the new Exchange 2007 console and the use of various Exchange 2007 features, but there's sure to be some folks who disagree with one or more of the items in the list above.
That's where you come in! Now that we have developed a much more flexible GUI architecture (ie - built on cmdlet business logic), it's far more possible than in previous versions of Exchange to correct problems in the GUI or to add in necessary GUI after the initial release of the product.
We'd love to hear from you if there are features you believe are missing from the GUI that should be there. It's our goal to keep the GUI simple and uncluttered - following the ground rules at the top of this blog post, but we definitely want to make sure we haven't overlooked some critical GUI features. Please let us know what you think!
- Evan Dodds and Amanda Langowski