Mailbox Category List Manager
The Master Category List Manager provides a GUI interface to access the master category list of an Exchange mailbox. The master category list to used to populate the list of available categories for labeling of messages, appointments, meetings, and other objects.
The project is provided as a Visual Studio solution with the following requirements
- .NET Framework 4.6.1
Code libraries part of the solution:
- Exchange Web Services API
The Category List Manager allows you to connect to a source mailbox which is either hosted on an on-premises Exchange Server or in Exchange Online using Exchange Web Services (EWS). You can use AutoDiscover or a static Url to connect to the Exchange Server.
By default the solution uses the credentials of the user executing the program. These credentials are referred to as default credentials. You can use the Settings form to set dedicated credentials of an user with appropriate access rights to the mailbox(es).
The program helps you to
- Export the master category list from a mailbox to a Xml file
- Import a master category list Xml file to into a mailbox
- Copy a master category list from a source mailbox to a target mailbox
The supported target mailbox types are:
- User Mailbox
- Shared Mailbox
- Microsoft Teams Mailbox
The tool supports GUI and command line usage.
Use CategoryManager.exe -help to get the most recent command line help information.
The GUI comes with an easy-to-use UI. The GUI functionality is described in the next paragraphs.
The main form provides a text box for the email address for the mailbox to connect to. You can use the checkbox to connect to the mailbox using EWS impersonation.
Use the Connect button to connect to the mailbox using the settings configured in the Settings form.
After the EWS connection has been established sucessfully, the EWS target Url is displayed in the status bar.
A successfully connected mailbox enables the Import/Export and Copy tabs.
Use the Import button to select an existing master category list Xml file for import into the mailbox you are connected to.
The Clear master category list before import checkbox enables the deletion of all existing categories before import. If you do not activate this checkbox the categories are added to the exisiting categories.
Use the Export button to export the master category list of the mailbox you are connected to.
The tab Copy allows for copying the master category list from the mailbox you are connected to into another mailbox.
Enter the email address of the target mailbox and select wether you want to use impersonation. CLick the Copy button to copy the master category list into the target mailbox.
The Clear master category list before import checkbox enables the deletion of all existing categories in the target mailboxbefore import. If you do not activate this checkbox the categories are added to the exisiting categories.
Use the Settings form to provide static credentials for connecting to Exchange and provide manual EWS connection information.
If you want to provide static credentials deactivate the Use default credentials checkbox and enter the username and password.
If you want to provide a static EWS Url deactivate the Use AutoDiscover checkbox and enter a full EWS Url, e.g. https://ews.varunagroup.de/EWS/Exchange.asmx
The Ignore Certificate errors checkbox should only be activated, when your on-premises EWS endpoint uses self-signed certificates or you are encountering any other weird certificate issues.
The Allow redirection checkbox should be activated, as this is a requirement for allowing any Url changes during EWS connection establishment.
Changes made to the settings configuration are saved by clicking the OK button.
The settings are persisted. The password provided is encrypted using AES 256 encryption.
Questions / Issues
If you have any questions about this solution or found an issue you would like to have fixed, please create a new issue.
Written by: Torsten Schlopsnies, Thomas Stensitzki
Additional credits go to: Henning Krause
- Torsten @Twitter: https://twitter.com/t_eschl
- Thomas' Blog: http://justcantgetenough.granikos.eu
- Thomas @Twitter: https://twitter.com/stensitzki
- Thomas @LinkedIn: http://de.linkedin.com/in/thomasstensitzki
- Github: https://github.com/Apoc70
For more Office 365, Cloud Security, and Exchange Server stuff checkout services provided by Granikos