Partager via


Compréhension de l'impact d'une propriété nommée et de limites d'identificateur de réplica sur des bases de données Exchange

 

S’applique à : Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1

Dernière rubrique modifiée : 2012-03-26

Microsoft utilise Messaging API (MAPI) pour connecter différents composants de transport de messages. La spécification MAPI représente la plupart des objets sous forme de propriétés. Pour identifier ces propriétés, MAPI utilise des identificateurs, appelés identificateurs de propriété ou PropID.

Les identificateurs de propriété sont un ensemble de valeurs hexadécimales comprises entre 1 et 0xFFFF. 65 534 propriétés peuvent être définies. Elles sont réparties dans les groupes suivants, appelés plages :

  • Propriétés transférables : cette plage inclut les propriétés qu'Exchange peut envoyer avec un message.

  • Propriétés internes : cette plage inclut les propriétés qui peuvent être définies par Exchange uniquement.

  • Propriétés non transférables : cette plage représente les propriétés non transmises en dehors de l'organisation lors de la remise d'un message par Exchange.

Les propriétés figurant dans ces plages sont appelées propriétés standard. Les propriétés MAPI standard ont des identificateurs fixes et représentent toutes les propriétés inférieures à 0x8000.

Il existe également une autre plage. Plus large que les autres, elle représente toutes les propriétés égales à 0x8000 et supérieures. Les propriétés figurant dans cette plage sont appelées propriétés nommées. Les propriétés nommées permettent aux fournisseurs d'étendre le jeu de propriétés MAPI standard en ajoutant leurs propres propriétés.

Les propriétés nommées sont constituées des deux types principaux suivants :

  • Propriétés dont les noms sont constitués de nombres. Celles-ci son utilisées par les programmes tels que Microsoft Outlook. Les noms de ces propriétés sont généralement définis dans un fichier source.

  • Propriétés dont les noms sont constitués de valeurs de chaîne (appelées « propriétés nommées de chaîne »). Elles sont associées à un nom et à un GUID. Ceci permet aux développeurs de répartir les propriétés nommées en jeux de propriétés.

Comme il n'y a pas d'ID spécifiques attribués aux propriétés nommées, MAPI intègre une fonctionnalité permettant de créer de façon dynamique des ID uniques pour les propriétés nommées et de conserver un mappage cohérent entre chaque propriété nommée et son ID unique. Toutefois, la création dynamique de ces ID a pour effet que les ID des propriétés nommées peuvent varier d'un ordinateur à l'autre.

Le service de banque d'informations Microsoft Exchange maintient une table de propriétés nommées pour chaque base de données. Lorsque la banque d'informations traite un message contenant des informations personnalisées, elle ajoute automatiquement une entrée à la table des propriétés nommées pour toute propriété personnalisée non traitée précédemment.

Les messages envoyés via Internet sont transférés au format Message/RFC822. Ce format de texte inclut les messages en texte brut avec des en-têtes contenant un ensemble de paires clé-valeur. RFC822 prend en charge un jeu de propriétés appelé en-têtes X.

Pour convertir les messages du format Message/RFC822 au format MAPI, Exchange utilise le composant Imail. Imail extrait les paires clé-valeur d'un message RFC822, et si possible, les convertit en propriétés MAPI. Imail assure également la conversion réciproque en extrayant les propriétés MAPI et en les convertissant en paires clé-valeur RFC822.

Le composant Imail inclut des en-têtes de prise en charge appelés en-têtes « Ad hoc » dans Microsoft Exchange 2000 Server. Ceux-ci sont conservés par Exchange pour les éventuelles utilisations ultérieures. Les en-têtes X sont l'un des types d'en-têtes inclus dans la définition des en-têtes Ad hoc. Par conséquent, Exchange stocke les informations d'en-tête X pour une utilisation ultérieure.

Par exemple, si une entreprise implémente une nouvelle application intégrée à Exchange et utilise un en-tête X SMTP, le service Banque d'informations Microsoft Exchange crée une propriété nommée pour ces informations personnalisées lorsqu'il traite le premier message contenant l'en-tête X.

Notes

Exchange ne crée pas d'autres propriétés nommées pour les messages suivants qui incluent le même en-tête X.

Exchange stocke ces propriétés nommées avec le ou les messages contenant l'en-tête X spécifique. Microsoft a publié l'espace de noms PS_INTERNET_HEADERS pour regrouper les en-têtes X des messages reçus sur Internet.

Limites des propriétés nommées

La liste suivante résume quelques aspects importants relatifs aux propriétés nommées :

  • Les en-têtes X sont des champs dans les messages de type Message/RFC822 qui contiennent certaines valeurs importantes.

  • Les propriétés nommées sont la méthode utilisée par Exchange pour réserver un ID pour une valeur spécifique.

  • Les propriétés nommées font partie de la plage des identificateurs de propriété comprise entre 0x8000 et 0xFFFF. Aussi, le nombre de propriétés nommées qui peuvent être créées dans une base de données de messagerie (MDB) est limité.

  • Une fois allouée, une propriété nommée ne peut pas être désallouée. La propriété reste réservée à la combinaison nom-GUID spécifique.

    Notes

    Il est techniquement possible de récupérer les propriétés nommées allouées. Toutefois, le processus est relativement long et requiert le démontage de la base de données de messagerie le temps d'examiner les messages afin d'identifier les propriétés non utilisées.

Comme le nombre de propriétés nommées disponibles est fixe, Exchange utilise un système de quotas pour suivre le nombre de propriétés nommées allouées. Dans ce système, le processus Store.exe avertit l'utilisateur lorsque le nombre d'ID de propriété nommée disponibles est presque épuisé. Lorsqu'un deuxième seuil est atteint, le processus Store.exe n'alloue plus d'ID de propriété nommée.

Épuisement des propriétés nommées

Si bon nombre de programmes utilisent des propriétés nommées, Microsoft Outlook est celui qui en utilise le plus. À l'épuisement des ID de propriété nommée, Outlook ne peut pas mapper une propriété nommée. Dans ce cas, vous pouvez rencontrer des symptômes semblables à ce qui suit :

  • Les ID d'événement 9666 et 9667 sont consignés dans le journal des applications. Pour plus d'informations, consultez la rubrique Événements 9666, 9667, 9668 et 9669 reçus lorsque les propriétés nommées ou identificateurs de réplica sont épuisés pour une base de données Exchange.

  • Les messages contenant des propriétés qui ne peuvent pas être mappées ne sont pas remis. Lorsque vous examinez les informations de suivi d'un message affecté, vous remarquez des informations semblables à ce qui suit :

    550 5.2.0 STOREDRV.Deliver: Le service Banque d'informations de Microsoft Exchange a renvoyé une erreur. Les informations suivantes doivent permettre d'identifier la cause de cette erreur :

  • Lorsqu'un complément qui ajoute des propriétés nommées ou des en-têtes X aux messages est installé dans Outlook, il se peut que certains messages ne soient pas envoyés aux autres utilisateurs de l'organisation. Dans ce cas, l'expéditeur reçoit une notification d'échec de remise semblable à ce qui suit :

    Le message a atteint le système de messagerie du destinataire mais le message n'a pas été remis. Tentez de ré-envoyer le message. Dans le cas d'un nouvel échec, contactez votre administrateur système.

Identificateurs de réplica

Le problème qui affecte la disponibilité des propriétés nommées a également une incidence sur les identificateurs de réplica de dossier public. Une limite maximale de 32 767 ID de propriété est appliquée à chaque base de données. Si cette limite est atteinte pour une base de données spécifique, Exchange ne peut plus créer de nouveaux ID de propriété.

Si ce problème se produit sur une base de données de boîtes aux lettres, vous devez créer une base de données de boîtes aux lettres, déplacer toutes les boîtes aux lettres vers la nouvelle base de données, puis supprimer la base de données de boîtes aux lettres ayant atteint la limite des ID de propriété. Vous pouvez ensuite créer une base de données de boîtes aux lettres, puis déplacer à nouveau les boîtes aux lettres vers cette base de données.

Si ce problème se produit sur une base de données de dossiers publics, le traitement de récupération est plus compliqué. Dans ce cas, vous devez répliquer tous les dossiers publics sur un autre serveur et supprimer la base de données de dossiers publics affectée. Vous pouvez ensuite autoriser la nouvelle réplication du contenu sur le serveur d'origine. Toutefois, si une réplication est déjà configurée pour vos dossiers publics, il est probable que les autres bases de données de dossiers publics de votre organisation contiennent également les éléments qui utilisaient les propriétés nommées. Il est probable que ces bases de données auront atteint les limites d'ID configurées. Pour contourner ce problème, vous devez configurer le vieillissement de vos dossiers publics de façon à purger le contenu plus ancien ne faisant l'objet d'aucun accès et susceptible de consommer des propriétés nommées. Vous pouvez également répartir le contenu de la base de données de dossiers publics entre plusieurs bases de données de dossiers publics.

Par défaut, Microsoft Exchange Server 2007 dispose d'un quota de 16 384 propriétés nommées créées par des utilisateurs authentifiés et des identificateurs de réplica. Le quota par défaut pour les propriétés nommées créées par des utilisateurs non authentifiés est fixé à 8 192. Ces quotas par défaut vous permettent de recevoir une notification précoce sur la diminution potentielle des ID de propriété. Vous pouvez alors intervenir avant que la limite maximale soit atteinte et rende la base de données inutilisable. C'est pourquoi les quotas peuvent vous aider à réduire les effets d'une application ne fonctionnant pas correctement ou d'une attaque malveillante par déni de service. Vous pouvez également configurer les quotas relatifs au nombre de propriétés nommées et d'identificateurs de réplicas. Pour obtenir la procédure détaillée de configuration des quotas, consultez la rubrique Procédure de configuration de quotas de propriétés nommées et d'identificateurs de réplicas pour bases de données Exchange 2007.

Modifications des en-têtes X dans le correctif cumulatif 8 pour Exchange 2007 SP1 et Exchange 2007 SP2

Dans le correctif cumulatif 8 pour Exchange Server 2007 SP1, les modifications apportées ont trait à la prise en charge des en-têtes X par Exchange.

Notes

Ces modifications sont également incluses dans Exchange 2007 Service Pack 2 (SP2).

Dans les versions antérieures d'Exchange, les en-têtes X sont promus au niveau de la base de données. Si un utilisateur spécifique mappe une propriété nommée sur une base de données, les autres utilisateurs sur cette base de données reçoivent un ID de propriété identique pour la combinaison nom-GUID. Le correctif cumulatif 8 et les mises à jour ultérieures implémentent de nouvelles règles définissant la consommation par les activités des propriétés nommées pour stocker les valeurs d'en-tête X.

Notes

Si une propriété nommée pour une valeur d'en-tête X spécifique a déjà été promue sur la base de données, le correctif cumulatif 8 et les mises à jour ultérieures ne la suppriment pas. Les mappages d'en-tête X existants sont conservés. Toutefois, si Exchange reçoit un message contenant un en-tête X qui n'a jamais été promu dans la base de données, les nouvelles règles de promotion des en-têtes X prennent effet.

En raison des nouvelles règles de promotion des en-têtes X, divers scénarios pouvant entraîner la consommation de nouvelles propriétés nommées à des fins de conservation des données d'en-tête X ne seront plus applicables. Les sections suivantes décrivent certains de ces scénarios.

Scénarios n'entraînant plus la consommation de propriétés nommées à des fins de conservation des en-têtes X

Envois anonymes

Les messages électroniques anonymes provenant d'Internet ne consomment plus de propriétés nommées pour les en-têtes X. Si les informations d'en-tête X existantes des messages électroniques anonymes sont conservées, la valeur des en-têtes X n'est plus enregistrée sous forme de propriété dans le message électronique.

Messages incorporés

La fonctionnalité de message incorporé a été créée à des fins d'interopérabilité pour les applications MAPI. Elle permet de définir l'enveloppe ou les propriétés de niveau supérieur. Les messages incorporés ne consomment plus de nouvelles propriétés nommées.

Messages journalisés

Les messages journalisés représentent la consommation d'en-têtes X la plus importante dans Exchange. Prenons l'exemple du scénario suivant :

  • Votre organisation comporte 100 bases de données et une base de données de journaux.

  • Chaque base de données de messagerie (MDB) est exposée à 100 nouveaux en-têtes X d'Internet chaque mois.

Dans ce scénario, la base de données de journaux est exposée à 100 x 100 nouveaux en-têtes X chaque mois. L'épuisement des propriétés nommées disponibles est donc rapide.

Notes

Si les messages journalisés ne promeuvent plus les nouveaux mappages d'en-tête X, le contenu du journal est enregistré comme prévu. Par exemple, les rapports et messages journalisés sont toujours enregistrés.

Scénarios entraînant toujours une consommation de propriétés nommées à des fins de conservation des en-têtes X

Utilisateurs authentifiés

Les utilisateurs authentifiés peuvent toujours créer des messages dont les en-têtes X seront promus.

Applications MAPI

Les applications MAPI peuvent toujours créer des propriétés nommées. (Ces propriétés situées dans l'espace de noms PS_INTERNET_HEADERS seront des en-têtes X). Les applications des services Web Exchange qui utilisent des mappages de propriétés peuvent également créer des propriétés nommées. Ces propriétés peuvent également être des en-têtes X.

Notes

Les applications qui utilisent des en-têtes X de MAPI ne doivent pas être modifiées. L'application doit correctement demander les ID des combinaisons de propriétés nommées. Par exemple, l'application doit demander PS_INTERNET_HEADERS et « <chaîne_en-tête_X> ».

Si vous utilisez l'indicateur MAPI_CREATE dans une demande, l'application ajoute automatiquement l'en-tête X spécifique à la liste d'en-têtes X conservés dans la base de données de messagerie. Par ailleurs, si l'application définit un en-tête X de MAPI en créant un mappage de propriétés nommées dans l'espace de noms PS_INTERNET_HEADERS, il crée un mappage pour l'en-tête X. Exchange conservera ce mappage pour les messages entrants et créera le mappage pour les messages sortants.

importantImportant :
Si une application n'utilise pas l'indicateur MAPI_CREATE lorsqu'elle demande les ID de propriété nommée et si elle demande les noms inclus dans l'espace de noms PS_INTERNET_HEADERS tandis qu'un autre client n'a pas déjà demandé l'ID, l'application ne fonctionnera pas. Toutefois, si un client autorisé ou un client MAPI demande l'en-tête X par nom, l'application fonctionnera.

Modifications de propriétés dans Exchange 2010

Exchange Server 2010 inclut d'autres améliorations visant à résoudre les problèmes décrits dans ce document. Dans Exchange 2010, les ressources des propriétés nommées ont été déplacées au niveau des boîtes aux lettres plutôt qu'au niveau des bases de données.

Pour plus d'informations

Pour plus d'informations sur la gestion des bases de données, consultez la rubrique Gestion des groupes de stockage et des bases de données.

Pour plus d'informations sur les fonctionnalités de sécurité et de protection dans Exchange 2007, consultez la rubrique Sécurité et protection.