Seit dem 23. Mai 2006 ist “Office System 2007 Beta2″ für die Öffentlichkeit zugänglich. Immer wieder sind in den Outlook- und Exchange-Newsgroups Fragen zu lesen, die darauf schliessen, dass Anwender und sogar Administratoren das neue Outlook 2007 Beta2 in produktiven Umgebungen einsetzen.
Microsoft empfiehlt in der weiterführenden Dokumentation zu der Beta2-Version von Office 2007 ausdrücklich, dass diese Version nicht in der Produktion betrieben werden darf. Aber wer liest diese Info schon immer, wenn man doch übereifrig und neugierig auf ein komplett neues Outlook und dessen Features ist?
Ein kleiner Rückblick in die Vergangenheit
Als die finale Version von Outlook 2003 veröffentlicht wurde, dauert es nicht lange und in den Newsgroups standen erste Hilferufe, als ganz plötzlich in etlichen Umgebungen die Exchange 5.5 Informationsspeicherdienste nicht mehr reagierten und sich beendeten. Ich erinnere mich sehr genau, denn ich selbst war als Administrator auch Opfer dieser “Store Crashs”.
Was war passiert?
Outlook 2003 hat die Server-seitigen Regeln in einem Exchange 5.5 Postfach konvertiert und dies führte zu einer fehlerhaften Eigenschaft, womit der Store von Exchange 5.5 nicht umgehen konnte. Wurden derartige Regeln angewendet, hatte dies zur Folge, dass der Exchange 5.5-Informationsspeicher plötzlich und unerwartet nicht mehr reagierte oder sich beendete. Auch der Anwender von Outlook 2003 wunderte sich, dass Outlook ständig “wegflog”.
Schnell brachte Microsoft einen entsprechenden Hotfix für diese Anfälligkeit heraus, welcher Exchange 5.5 nach der Installation mit Outlook 2003 stabil laufen ließ. Nachzulesen ist dies auch in folgenden Artikeln:
834466 - The Information Store service and Outlook 2003 crashes intermittently when Outlook 2003 clients connect to a mailbox on an Exchange 5.5 server
Office Online Artikel – Critical Update for Exchange Server 5.5 Required Before Installing Outlook 2003
Ist Exchange 5.5 mit Outlook 2007 erneut gefährdet?
Die Antwortet (Stand Juli 2006) lautet NEIN.
Outlook 2007 kann sich nicht gegen einen Exchange 5.5 Server über die MAPI-Schnittstelle verbinden. Microsoft hat diese Begrenzung festgelegt und ab der Beta2 kommt nun auch folgende Fehlermeldung bei einem Zugriffsversuch in der genannten Konstellation:
“Cannot open your default e-mail folders. The resource that you are trying to use is located on an unsupported version of Microsoft Exchange Server.“
Es ist sehr unwahrscheinlich, aber natürlich nicht ausgeschlossen, dass Microsoft diese Begrenzung künftig noch entfernt.
Risiken beim Zugriff mit Outlook 2007 auf Exchange 2000 und 2003
Trotz zahlreicher und ausführlicher Tests (Microsoft intern und im Beta Programm) beim Zugriff von Outlook 2007 gegen Exchange 2000 und 2003 ist es natürlich nicht absolut auszuschließen, dass ähnliche Nebeneffekte auftreten, wie dies bei Outlook 2003 gegen Exchange 5.5 der Fall war. Gerade Beta Software hat noch Bugs und so ist es mehr als sinnvoll eine Schranke vor die Strasse zu bauen über die “Outlook 2007 Beta Autos” fahren können.
Ich selbst habe kürzlich in der von mir betreuten Exchange Umgebung im Exchange System Manager gesehen, dass sich Outlook 2007 Clients mit der Versionsnummer 12.x.xxxx.x gegen Exchange verbinden. Da kam ich dann ins Grübeln und entschloss mich dazu diesen Artikel zu schreiben.
Was kann ein Administrator tun, um den Zugriff von Outlook 2007 zu verhindern?
Es gibt die Möglichkeit mit Hilfe des Registry-Keys “Disable MAPI Clients“, welcher auf dem Exchange Server implementiert werden muss, eine oder mehrere MAPI-Versionen oder einen kompletten Bereich zu sperren. Der folgende Microsoft KB-Artikel ist die Grundlage dafür:
288894 – How to disable MAPI client access to an Exchange Server 2003 computer or to an Exchange 2000 Server computer
Die Zugriffs-Sperre – so wird’s gemacht
ACHTUNG: Ich habe die folgenden Informationen sauber recherchiert und getestet. Trotzdem ist nicht jede Umgebung identisch und auch mir passiert mal ein Tippfehler oder eine falsche Interpretation.
Für die Vollständigkeit, Richtigkeit und Fehler meiner Beschreibung und Fehler beim Editieren der Registry geschehen, übernehme ich keine Garantie. Änderungen in produktiven Umgebungen sollten vor der Implementierung in einer identisch aufgebauten Testumgebung ausführlich getestet werden!
Ich erkläre im folgenden Beispiel, wie der Zugriff aller Versionen von Outlook 2007 bei Exchange 2000 und Exchange 2003 gesperrt wird. Es ist auch möglich einzelne Versionen zu sperren. Bis zur Veröffentlichung der “Final Release” macht es natürlich nicht unbedingt Sinn jede Version einzeln zu erfassen, wenn alle Versionen von Outlook2007 gesperrt werden sollen.
Wie im oben genannten KB-Artikel beschrieben, muss eine neue Zeichenfolge (REG_SZ) namens “Disable MAPI Clients” an folgender Stelle in der Registry plaziert werden:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeIS\ParametersSystem
Jetzt muss noch der Wert der MAPI-Versionen festgelegt werden, dessen Zugriff verhindert werden soll.Schaut man im Exchange System Manager unter den Anmeldungen beim Mailbox Store, stellt sich das Format einer MAPI-Version des Outlook Clients wie folgt dar (Beipiel einer älteren Outlook 2007 Beta Version):
12.0.4017.1006
Der Bereich, den wir festlegen wollen muss nun in ein etwas anderes Format gebracht werden, damit der Exchange Store das Format richtig erkennt. Dazu wird die “.0.” in der Versionsnummer einfach weggelassen.
Wenn man also ausschließlich die im Beispiel oben genannte Versionsnummer sperren wollen würde, wäre dieses Format korrekt:
12.4017.1006
Um den kompletten Bereich der Outlook 2007 MAPI-Versionen zu sperren, ergibt sich folgender Wert:
12.0000.0-12.9999.9
Damit ist sichergestellt, dass alle denkbaren MAPI-Versionen von Outlook 2007 (Version 12) erfasst sind.In der Registry sieht das ganze dann wie folgt aus:
Sollen z.B. nur Beta Versionen von Outlook 2007 für den MAPI-Zugriff gesperrt werden, dann ist folgender Bereich zu wählen, da die RTM Version laut Jensen Harris (The Office 2007 UI Bible) voraussichtlich die Versionsnummer “12.0.4518.1014″ haben wird: 12.0000.0-12.4518.0
Ist der Wert korrekt eingetragen, muss bei der Verwendung von Exchange 2000 nun noch der Informationsspeicher Dienst neu gestartet werden.
Bei Exchange 2003 muss nur maximal 15 Minuten gewartet werden, da hier alle 15 Minuten Registry-Änderungen übernommen werden.
Wenn sich nun ein Outlook 2007 Client gegen den Server per MAPI verbindet, bekommt der Anwender laut Microsoft einen Hinweis mit folgendem Text:
“Ihr Exchange Server-Administrator hat die Version von Outlook, das Sie verwenden, blockiert. Wenden Sie sich an ihren Administrator.“
…oder…
“Your Exchange Server administrator has blocked the version of Outlook that you are using. Contact your administrator for assistance.“
Ich kann nach meinen Tests mit einer Outlook 2007 Beta (Version 12.0.4017.1006) jedoch nur folgende Meldung bestätigen:
“Ihre Standard-E-Mail-Ordner können nicht geöffnet werden. Der Microsoft Exchange Server-Computer steht nicht zur Verfügung. Das Netzwerk antwortet nicht, oder der Server wurde für Wartungsarbeiten heruntergefahren“
Es mag aber sein, dass die etwas sprechende Meldung in der Beta2 von Outlook 2007 nocht nicht implementiert war. Man wird es sehen, wenn die finale Version kommt.
Und jetzt noch ein paar Fakten aus der Praxis
- In einer Exchange Cluster-Umgebung genügt es nicht nur die Cluster Ressorce “Exchange Information Store Instance” zu beenden und wieder zu starten. Hier muss zusätzlich im Windows Dienste Manager der Dienst “Exchange Information Store” neu gestartet werden, damit die Verbindungs-Sperre greift.
- Die Verbindungs-Sperre greift für einen Outlook Client nicht, wenn dieser noch geöffnet war. Nach dem Re-Connect von Outlook gegen Exchange funktioniert der Zugriff noch. Zumindest konnte ich dieses Verhalten bei Exchange 2000 beobachten. Erst nach dem Neustart von Outlook wird der Zugriff verhindert und eine entsprechende Meldung kommt.
- Die Zugriffs-Sperre greift nicht, wenn der Bereich des Registry Keys “Disable MAPI Clients” im folgenden Format angegeben wird: 12.0.0-12.9.9
So ist es richtig und so funktioniert es auch nur: 12.0000.0-12.9999.9
- Wenn eine einzelne Version von Outlook 2007 gesperrt werden soll, dessen Version unbekannt ist und welche ermittelt werden soll, dann ist die Versionsnummer der Datei “Emsmdb32.dll” auf dem Client relevant. Es ist ein Trugschluss, dass die Dateien Outlook.exe, Outlib.dll oder Msmapi32.dll hierfür zutreffen.
- Diese ganzen Einstellungen sollten natürlich dokumentiert und nicht vergessen werden. Es kommt die Zeit, wo Outlook 2007 “final wird” und spätestens wenn die Freigabe des Zugriffs in Produrion für “OL2k7″ erteilt wird, sollte sich der Exchange Administrator wieder an diese Aktion erinnern!
Links zum Thema
256986 – Beschreibung der Microsoft Windows-Registrierung
328240 – How to put server-side restrictions on clients that are used to access Exchange 2000 mailboxes
288894 – XADM: Feature to Disable MAPI Client Access
Artikel “Exchange und Outlook Build Nummern” von Frank Carius:
http://www.msexchangefaq.de/admin/build.htm
Keywords: Outlook 2007 Beta Disable MAPI Clients Versionsnummer sperren