msExchangeMailboxGUID bzw. MailboxGUID

Jeder Admin kennt die Felder "mail, MailNickName und ProxyAddresses". Aber neben der Kenntnis über TargetAddress" und LegacyExchangeDN ist auch das Wissen um das Feld msExchMailboxGUID bzw. ExchangeGUID nicht allseits bekannt und trotzdem wichtig. Diese unscheinbare Feld stellt zusammen mit dem HomeMDB-Feld die tatsächliche Verbindung zur Mailbox her. Das Feld wird oft unterschiedliche bezeichnet:

Die Funktion

Das Feld enthält eine lang zufällig GUID, die bei Exchange 2003 weder durch den Administrator noch den RUS angelegt wird, sondern durch den Store-Prozess beim ersten Zugriff auf die Mailbox angelegt wird.

Bei Exchange 2007 hingegen ist der Prozess anders, da hier die Exchange Management Shell bei der Konfiguration des Benutzers dieses Feld gleich mit einer (zufälligen) GUID füllen und der Store beim ersten Zugriff des Benutzers die Mailbox nicht finden und dann unter Verwendung der bereits hinterlegten GUID neu erstellt.

Fehler bei fehlerhafter Anlage.

Das kann zu der Problematik führen, dass in einer Exchange 2007 Umgebung ein User mit den Exchange 2003 Management Tools angelegt wird, aber mangels Exchange 2003 Server und mangels RUS dieser Benutzer für Exchange 2007 nicht sichtbar ist. Ein "Aktivieren" mit folgender Zeile zeigt das Problem:

Get-mailbox | where-object {$_.RecipientTypeDetails -ilike "Legacy*"} |
 Set-Mailbox -ApplyMandatoryProperties -verbose
 
WARNING: Object msxfaq.test/TestOU/testuser3 has been corrupted and it is 
in an inconsistent state. The following validation errors have occurred:
 
WARNING: ExchangeGuid is mandatory on UserMailbox.
 
VERBOSE: Set-Mailbox : Administrator Active Directory session settings are:  
View Entire Forest: 'True', Configuration Domain Controller: 'SRV01.msxfaq.test', 
 
VERBOSE: Set-Mailbox : Searching objects "msxfaq.test/TestOU/testuser3 " of
 type "ADUser" under the root "msxfaq.test/TestOU".
 
VERBOSE: Set-Mailbox : Previous operation run on domain controller 
'SRV01.msxfaq.test'.
 
VERBOSE: Set-Mailbox : Processing object "msxfaq.test/TestOU/testuser3".
Set-Mailbox : ExchangeGuid is mandatory on UserMailbox.

Aus dieser Henne-Ei-Thematik kommt man nur mit einem manuellen Eingriff wieder heraus. Nur wenn das Postfach auf einem Exchange 2003 Server liegt, fixt die STORE.EXE den fehlenden Eintrag. Bei Exchange 2007 muss man selbst eine MailboxGUID erstellen und beim Objekt speicher. Das ist aber dank Powershell und .NET relativ einfach. Das entsprechende Tool finden Sie auf MSXFAQ.DE -Fix-MailboxGuid

Weitere Links

Keywords: MailboxGUID GUID