Update Rollup 2 pour Exchange 2007 SP1

Ce qui est amusant dans l'informatique c'est qu'on n'a jamais le temps de s'ennuyer ! Pour preuve, alors que toute la France est en vacances sous le joli soleil de Mai, les collègues de Redmond en ont profité pour rendre disponible le deuxième roll-up post SP1 d'Exchange 2007.

Si vous avez du mal à le trouver, voici le pointeur pour le télécharger directement : https://www.microsoft.com/downloads/details.aspx?FamilyID=99da32e0-d9e3-4156-aabf-8369bf96e3e7&DisplayLang=en

Il faut cependant faire attention à un point important : Les binaires de ce roll-up ont été signés avec un nouveau certificat !

Pour bien comprendre le sujet, il faut savoir que les binaires d'Exchange 2007 écris en code managés sont signés et le certificat est vérifiée lors du démarrage des services. En fait lors du chargement d'une assembly, le framework .Net (le CLR en fait) vérifie la signature associée à ce code. Cette vérification passe par un accès à la CRL (Certificate Revocation List) disponible sur Internet. Si le serveur n'a pas accès à Internet, il est possible que le time-out d'accè soit supérieur au time-out imposé par le système au démarrage d'un service.

Au final, il est possible qu'un service ne démarre pas tout simplement car le système n'a pas accès à Internet. Pour contrer ce comportement, il suffit de suivre la procédure indiquée dans l'article suivant de la base de connaissance : https://support.microsoft.com/kb/944752/en-us/

Le nouveau certificat utilisé pour la signature du code est plus robuste car il utilise de nouveaux algorithmes de calcul des clefs (je demanderai à Stanislas des précisions si il y en a parmi vous qui sont intéressés). La contrepartie est que le CLR va mettre plus de temps à vérifier ces nouveaux binaires. Il est donc possible que même si le serveur a accès à Internet, le démarrage des services mettre plus de temps que le time-out du système. Dans ce cas, il est recommandé de suivre le même article que précédemment pour modifier la valeur "ServicesPipeTimeout" dans la base de registre afin de laisser assez de temps au CLR pour valider le certificat.