A Deeper Look into Exchange 2010 SP2
Written by Casper Manes on December 5, 2011
With the imminent release of Exchange 2010’s Service Pack 2, I thought it would be nice to share some of the more interesting details that may be in store. I was digging around the Microsoft site looking for some documentation on what changes are actually made to the Active Directory schema when you extend it, as some fellow engineers had (unfounded) concerns about extending the schema. In my quest for documentation, I came across some very interesting documentation made available by Microsoft.
The Exchange Server Active Directory Schema Changes Reference is a Microsoft Word document that defines every change made to the Active Directory schema since Exchange 2003. This one hundred and seventy-one page tome goes into specific detail, and will no doubt prove to be immensely useful to developers and AD archaeologists in the future. The reason I am sharing it with you now is because it details even those changes that SP2 will make to the schema (yes, that’s correct, you will need to extend the schema to apply SP2, as mentioned in this article).
SP2’s schema extensions will modify several of the common classes we’re used to dealing with, including Mail-Recipient and ms-Exch-Mail-Storage, and our favourite ms-Exch-CustomAttributes, but where it gets interesting is in what classes and attributes are being added. A quick scan of these supports some of the new features we know are coming in SP2, including Address Book Policies, but take a look at the full list.
Classes Added By Exchange 2010 SP2
The following classes are added when you install Exchange 2010 SP2:
• ms-Exch-Address-Book-Mailbox-Policy
• ms-Exch-Coexistence-Relationship
• ms-Exch-ActiveSync-Device-Autoblock-Threshold
Attributes Added by Exchange 2010 SP2
The following attributes are added when you install Exchange 2010 SP2:
• ms-Exch-Content-Byte-Encoder-Type-For-7-Bit-Charsets
• ms-Exch-Content-Preferred-Internet-Code-Page-For-Shift-Jis
• ms-Exch-Content-Required-Char-Set-Coverage
• ms-Exch-Address-Book-Policy-Link
• ms-Exch-Address-Book-Policy-BL
• ms-Exch-Address-Lists-Link
• ms-Exch-Address-Lists-BL
• ms-Exch-Global-Address-List-Link
• ms-Exch-Global-Address-List-BL
• ms-Exch-Offline-Address-Book-Link
• ms-Exch-Offline-Address-Book-BL
• ms-Exch-All-Room-List-Link
• ms-Exch-All-Room-List-BL
• ms-Exch-Coexistence-Domains
• ms-Exch-Coexistence-External-IP-Addresses
• ms-Exch-Coexistence-Feature-Flags
• ms-Exch-Coexistence-Servers
• ms-Exch-Extension-Attribute-16
• ms-Exch-Extension-Attribute-17
• ms-Exch-Extension-Attribute-18
• ms-Exch-Extension-Attribute-19
• ms-Exch-Extension-Attribute-20
• ms-Exch-Extension-Attribute-21
• ms-Exch-Extension-Attribute-22
• ms-Exch-Extension-Attribute-23
• ms-Exch-Extension-Attribute-24
• ms-Exch-Extension-Attribute-25
• ms-Exch-Extension-Attribute-26
• ms-Exch-Extension-Attribute-27
• ms-Exch-Extension-Attribute-28
• ms-Exch-Extension-Attribute-29
• ms-Exch-Extension-Attribute-30
• ms-Exch-Extension-Attribute-31
• ms-Exch-Extension-Attribute-32
• ms-Exch-Extension-Attribute-33
• ms-Exch-Extension-Attribute-34
• ms-Exch-Extension-Attribute-35
• ms-Exch-Extension-Attribute-36
• ms-Exch-Extension-Attribute-37
• ms-Exch-Extension-Attribute-38
• ms-Exch-Extension-Attribute-39
• ms-Exch-Extension-Attribute-41
• ms-Exch-Extension-Attribute-40
• ms-Exch-Extension-Attribute-42
• ms-Exch-Extension-Attribute-43
• ms-Exch-Extension-Attribute-44
• ms-Exch-Extension-Attribute-45
• ms-Exch-Coexistence-On-Premises-Smart-Host
• ms-Exch-Coexistence-Secure-Mail-Certificate-Thumbprint
• ms-Exch-Coexistence-Transport-Servers
• ms-Exch-extension-custom-attribute-1
• ms-Exch-extension-custom-attribute-2
• ms-Exch-extension-custom-attribute-3
• ms-Exch-extension-custom-attribute-4
• ms-Exch-extension-custom-attribute-5
• ms-Exch-ActiveSync-Device-AutoBlock-Duration
• ms-Exch-ActiveSync-Device-Autoblock-Threshold-Incidence-Duration
• ms-Exch-ActiveSync-Device-Autoblock-Threshold-Incidence-Limit
• ms-Exch-ActiveSync-Device-Autoblock-Threshold-Type
Notice all those new Extension Attributes? If you have ever worked in a company that wanted to store more data in ms-Exch-Extension attributes instead of deploying their own schema extensions, you have probably run into a supply and demand situation where there just weren’t enough attributes to go around. Well SP2 adds another thirty, tripling the available extension attributes. For a couple of my customers, that’s reason enough to extend the schema with a beta of SP2 even if you don’t plan to actually deploy the service pack until next Spring! All of these new extension attributes will be indexed and replicated to the Global Catalog, making searches across AD for whatever you store in those attributes easier to execute across the forest.
Close to thirty MAPI ID’s are also being added, which may hint at new capabilities in store for the next version of Outlook. Time will have to tell on that one, but the note at the end holds a clue.
Only attributes with MAPI IDs can be retrieved directly from Active Directory Domain Services (AD DS) by Microsoft Outlook or other MAPI clients.
You can download the Schema reference from http://www.microsoft.com/download/en/details.aspx?id=5401 but be aware; for reasons that defy all logic, Microsoft chose to make this download an MSI file, that “installs” the documentation to your Program Files directory. Yes, that’s right, what at the end is just simple docx must be installed, invoke ConsentUI, build a directory path in your Program Files directory, and then drop a docx. With so much other documentation available from Microsoft in docx or PDF, this makes no sense, so you might want to just crack the MSI open and extract the docx by hand. It’ll be quicker!
However you choose to get the file, have a look and keep it handy. It’s a good history lesson in the evolution of Exchange, and I’m sure many of you will find a use for all those new extension attributes!



