msExchRecipientTypeDetails
Seit Exchange 2007 gibt es einige neue Felder im Active Directory. Das Feld "msExchRecipientTypeDetails" ist z.B. dafür zuständig, die verschiedenen Empfängertypen zu differenzieren, die Exchange 2007 neu anbietet.
Beachten Sie mit Office 365 auch das Feld msExchRemoteRecipientType.
Einmal neugierig geworden habe ich natürlich gleich nachschauen müssen, woran Exchange 2007 denn diese Mailboxtypen fest macht. Die entsprechenden AD-Felder waren schnell gefunden und ein bisschen spielen mit den Werten brachte interessantes zu Tage. Die Exchange Management Shell kennt und zeigt noch weit mehr Typen ab, die aber noch nicht verwendet werden. Zumindest habe ich sie noch nicht gesehen.
Bitte ändern Sie nicht selbst diese Felder. Ich mache solche Untersuchungen in streng abgeschirmten TestUmgebungen, die ich einfach wieder auf den Startwert setzen kann. In Produktion ist dies nicht ratsam
Hinweis:
Ich habe schon fehlerfreie Objekte bei Kunden
gesehen, bei denen nicht alle Werte gesetzt
waren. Insbesondere msExchRecipientTypeDetails
scheint manchmal leer zu sein und nur msExchRecipientDisplayType
gesetzt. Ich hatte auch unstimmige Objekte, z.B.
dass der msExchRecipientDisplayType = 1
(UserMailbox) und msExchRecipientTypeDetails
=1073741833 (group) war.
if (msExchRecipientDisplayType -ne $null) { # werte Empfänger anhand msExchRecipientDisplayType aus } else { # werte Empfänger anhand msExchRecipientTypeDetails aus }
Hier die Liste der mir bekannten Inhalte je nach Empfänger. Übrigens gibt es die ähnlichen Felder auch in Office 365
Beachten sie dazu auch die Bedeutung von msExchRemoteRecipientType
Typ | AD: msExchRecipientDisplayType O365: RecipientDisplayType CloudExchangeRecipientDisplayType |
AD:msExchRecipientTypeDetails O365: RecipientTypeDetails |
---|---|---|
Keine Exchange Funktion |
|
0 (0x0) |
MailboxUser / UserMailbox |
0 |
1 (0x1) |
1073741824 |
2 (0x2) |
|
Shared Mailbox |
1073741824 |
4 (0x4) |
Exchange 2003 Legacy |
Nicht Vorhanden |
8 (0x8) |
Room |
7 |
16 (0x10) |
Equipment |
8 |
32 (0x20) |
Mail Contact |
6 |
64 (0x40) |
Mail User |
6 |
128 (0x80) |
Mail universal Distribution Group |
1 |
256 (0x100) |
Mail non universal Group |
|
512 (0x200) |
Mail universal Security Group |
1073741833 |
1024 (0x400) |
Dynamic Distribution Group |
3 |
2048 (0x800) |
Mail-Enabled Public Folder |
2 |
4096 (0x1000) |
System Attendant Mailbox |
|
8192 (0x2000) |
Systemmailbox/Mailbox Database Mailbox |
|
16384 (0x4000) |
MailForestContact / Cross Forest Mail Contact |
6 |
32768 (0x8000) |
User |
|
65536 (0x10000) |
Contact |
|
131072 (0x20000) |
Universal Distribution Group |
|
262144 (0x40000) |
Universal Security Group |
|
524288 (0x80000) |
Non-Universal Group |
|
1048576 (0x100000) |
Disabled User |
|
2097152 (0x200000) |
Microsoft Exchange |
|
4194304 (0x400000) |
Arbitration Mailbox |
|
8388608 (0x800000) |
MailboxPlan |
|
16777216 (0x1000000) |
LinkedUser |
|
33554432 (0x2000000) |
RoomList |
|
268435456 (0x100000000) |
DiscoverySearchMailbox |
|
536870912(0x20000000) |
Organization |
4 |
|
PrivateDistributionGroup |
5 |
|
SystemMailbox oder FederationMailbox |
10 |
|
Role Group |
|
1073741824(0x40000000) |
RemoteUserMailbox |
-2147483642 |
2147483648 (0x80000000) |
RemoteLinkedUserMailbox (Siehe auch Linked Mailbox) |
-2147483642 |
2147483648 (0x80000000) |
Computer |
|
4294967296 (0x100000000) |
RemoteRoomMailbox |
-2147481850 |
8589934592 (0x200000000) |
RemoteEquipmentMailbox |
-2147481594 |
17179869184 (0x400000000) |
RemoteSharedMailbox |
|
34359738368 (0x800000000) |
PublicFoldermailbox |
|
68719476736 (0x1000000000) |
TeamMailbox |
|
137438953472 (0x2000000000) |
RemoteTeamMailbox |
|
274877906944 (0x4000000000) |
Monitoring Mailbox |
|
549755813888 (0x8000000000) |
Group Mailbox |
|
1099511627776 (0x10000000000) |
LinkedRoomMailbox |
|
2199023255552 (0x20000000000) |
AuditLogMailbox |
|
4398046511104 (0x40000000000) |
RemoteGroupMailbox |
|
8796093022208 (0x80000000000) |
SchedulingMailbox |
|
17592186044416 (0x100000000000) |
GuestMailbox |
|
35184372088832 (0x200000000000) |
AuxAuditLogMailbox |
|
70368744177664 (0x400000000000) |
SupervisoryReview |
|
140737488355328 (0x800000000000) |
- Exchange 2007 and Recipient
Type Details
http://blogs.technet.com/b/benw/archive/2007/04/05/exchange-2007-and-recipient-type-details.aspx - Reference to
msExchRecipientDisplayType,
msExchRecipientTypeDetails and
msExchRemoteRecipientType values
http://www.mistercloudtech.com/2016/05/18/reference-to-msexchrecipientdisplaytype-msexchrecipienttypedetails-and-msexchremoterecipienttype-values/ - msExchRecipientTypeDetails
https://identitydude.com/2014/05/09/msexchrecipienttypedetails/ - Reference to
msExchRecipientTypeDetails
https://www.windowstechno.com/reference-to-msexchrecipienttypedetails/
Interessant sind z.B. "Across Forest Mail Contact" oder auch die Gruppen, die anscheinend nicht zwingend Mailenabled sind. Weitere Informationen hierzu habe ich aber nicht.
Achtung:
Allein das ändern dieser Felder bewirkt nicht automatisch, dass sich der
Postfachtyp komplett ändert. Aus einer Mailbox kann man nicht einfach
einen Kontakt machen
Anstelle das Active Directory direkt selbst auszulesen, sollten Sie besser mit "Get-Recipient" und entsprechenden Filtern arbeiten. Wer aber dennoch z.B. aus Performancegründen, selbst per ADSI arbeitet, kann folgende Funktion nutzen:
function get-recipienttype { param ($value) switch ($value) { $null {"noExchange"} 1 {"UserMailbox"} 2 {"Linked"} 4 {"Shared"} 8 {"Exchange2003Legacy"} 16 {"Room"} 32 {"Equipment"} 64 {"MailContact"} 128 {"MailUser"} 256 {"MailUniversalDistributionGroup"} 512 {"MailnonUniversalGroup"} 1024 {"MailUniversalSecurityGroup"} 2048 {"DynamicDistributionGroup"} 4096 {"MailEnabledPublicFolder"} 8192 {"SystemAttendantMailbox"} 16384 {"MailboxDatabaseMailbox"} 32768 {"AcrossForestMailContact"} 65536 {"User"} 131072 {"Contact"} 262144 {"UniversalDistributionGroup"} 524288 {"UniversalSecurityGroup"} 1048576 {"NonUniversalGroup"} 2097152 {"DisabledUser"} 4194304 {"MicrosoftExchange"} 8388608 {"MicrosoftExchange"} default {"unknown:$value"} } }
msExchVersion
Interessant für Migrationen ist auch das Feld msExchVersion, welche seit Exchange 2007 vorhanden ist. Diese Feld ist ein Hinweis auf die Version des Postfachs und wird durch Set-Mailbox bzw. der Migration gesetzt. Folgende Werte kenne ich bislang:
Exchange Version | Wert von msExchVersion |
---|---|
Exchange 2000/2003 |
nicht vorhanden |
Exchange 2007 |
4535486012416 |
Exchange 2010 |
44220983382016 |
Diese Feld ist z.B.: nützlich, wenn sie per Veröffentlichung abhängig von der Postfachversion URLs bereit stellen wollen. Diverse Firewalls und Portallösungen können nämlich abhängig von Gruppenmitgliedschaften oder LDAP-Feldinhalten unterschiedliche Applikationen bereit stellen.
- 982944 The msExchVersion attribute value of a User is stamped incorrectly after you run the Enable-MailUser cmdlet to mail-enable the User
- Is there a way to manage mailboxes separately based on the versions of Exchange the mailboxes were created on? https://support.quest.com/Search/SolutionDetail.aspx?ID=SOL64814
Weitere Links
- Ressourcen
- MailForestContact
- msExchRemoteRecipientType
-
Exchange Online Provisioning
So werden Exchange Online Postfächer mit AADConnect korrekt provisioniert -
O365: Exchange and AD – How msExchRecipientDisplayType and
msExchangeRecipientTypeDetails Relate to Your On-Premises
https://blogs.technet.microsoft.com/johnbai/2013/09/11/o365-exchange-and-ad-how-msexchrecipientdisplaytype-and-msexchangerecipienttypedetails-relate-to-your-On-Premises/ - Exchange 2007 and Recipient Type Details
http://blogs.technet.com/benw/archive/2007/04/05/exchange-2007-and-recipient-type-details.aspx - Reference to msExchRecipientDisplayType,
msExchRecipientTypeDetails and msExchRemoteRecipientType values
http://www.mistercloudtech.com/2016/05/18/reference-to-msexchrecipientdisplaytype-msexchrecipienttypedetails-and-msexchremoterecipienttype-values/ - msExchRecipientTypeDetails
http://marksmith.netrends.com/Lists/Posts/ViewPost.aspx?ID=51 - CSharp/Public.CSharp.Research/Public.Exchange.Research/Objects/TypeEnums.
https://GitHub.com/felsokning/CSharp/blob/master/Public.CSharp.Research/Public.Exchange.Research/Objects/TypeEnums.cs - How to set msExchRecipientTypeDetails Active Directory Attribute using VBScript
http://blogs.msdn.com/b/brijs/archive/2008/12/19/how-to-set-msexchrecipienttypedetails-active-directory-attribute-using-vbscript.aspx - Exchange Recipient Types and Office 365 – Setting Active
Directory attribute values
http://memphistech.net/exchange-recipient-types-and-office-365-setting-active-directory-attribute-values/ - Exchange 2010 Recipient Types
http://blog.icewolf.ch/archive/2011/06/08/exchange-2010-recipient-types.aspx - Exchange 2007 and Recipient Type Details
http://blogs.technet.com/b/benw/archive/2007/04/05/exchange-2007-and-recipient-type-details.aspx - msExchRecipientTypeDetails
https://identitydude.com/2014/05/09/msexchrecipienttypedetails/