Intégration d'annuaire et Exchange Server 2003

 

Dernière rubrique modifiée : 2005-12-15

Les informations sur Exchange Server 2003 contenues dans Active Directory concernent les destinataires et les informations de configuration se rapportent à l'organisation de messagerie. Active Directory fournit également le sous-système de sécurité d'Exchange Server 2003. La sécurité d'Active Directory vérifie que seuls les utilisateurs autorisés accèdent aux boîtes aux lettres et que seuls les administrateurs autorisés modifient la configuration d'Exchange dans l'organisation.

Les trois partitions d'annuaire contenues dans Active Directory ci-après contiennent des données relatives à Exchange.

  • Partition d'annuaire de domaine   Les objets système et de destinataire d'Exchange sont stockés dans la partition d'annuaire de domaine d'Active Directory. La partition d'annuaire de domaine est répliquée sur tous les contrôleurs d'un domaine donné.
  • Partition d'annuaire de configuration   Les objets de configuration Exchange, tels que les groupes d'administration, les paramètres globaux, les stratégies système et de destinataire et les listes d'adresses ou d'informations sur les adresses, sont stockés dans la partition d'annuaire de configuration. La partition d'annuaire de configuration est répliquée sur tous les contrôleurs de la forêt.
  • Partition d'annuaire du schéma   Les modifications du schéma Exchange (par exemple, les classes et les attributs) sont stockées dans la partition d'annuaire du schéma. La partition d'annuaire du schéma est répliquée sur tous les contrôleurs de la forêt.
noteRemarque :
Les informations de configuration ne sont pas toutes stockées dans Active Directory. Exchange utilise également le Registre local, la métabase IIS et, dans des cas exceptionnels, les fichiers de configuration.

Classes et attributs Exchange contenus dans Active Directory

Le schéma Active Directory définit les classes d'objet pouvant être créées dans l'annuaire, ainsi que les attributs pouvant être attribués à chaque instanciation d'un objet. Au cours de l'installation du premier serveur Exchange 2003 dans une forêt Active Directory, Exchange doit modifier ce schéma afin qu'Active Directory puisse stocker des informations sur la configuration et le destinataire spécifiques à Exchange. Le processus ForestPrep du programme d'installation d'Exchange étend le schéma Active Directory. Vous pouvez également exécuter ce processus explicitement, en utilisant la ligne de commande Setup/ForestPrep pour ajouter les classes et attributs spécifiques à Active Directory, sans installer de serveur. Cette étape supplémentaire est nécessaire si l'utilisateur qui installe Exchange Server 2003 ne dispose pas de droits d'administrateur de schéma.

Le programme d'installation d'Exchange Server 2003 étend le schéma Active Directory en important une série de fichiers .ldf dans Active Directory. À l'exception d'Exschema.ldf, tous les fichiers .ldf se trouvent dans le répertoire \Setup\i386\Exchange du CD-ROM du produit. Exschema.ldf réside dans le répertoire \Setup\i386\Exchange\Bin.

Le tableau suivant répertorie les divers fichiers .ldf qui définissent les objets et les attributs d'Exchange Server 2003.

Fichiers d'installation d'Exchange Server 2003 et extensions de schéma Active Directory

Nom de fichier Description

Schema0.ldf

Ce fichier inclut les extensions de schéma pour les objets de destinataire, telles que la définition des attributs d'extension Exchange, que vous pouvez utiliser pour attribuer des informations, non fournies par aucun des attributs standard, à des objets de destinataire.

Schema0.ldf

Ce fichier inclut des extensions de schéma pour le connecteur Active Directory, que vous pouvez utiliser pour intégrer une organisation Exchange Server 5.5 à Active Directory.

Schema0.ldf

Ce fichier inclut des extensions de schéma pour les protocoles d'accès Internet, la synchronisation d'annuaire et les objets de configuration de la banque d'informations Exchange.

Schema0.ldf

Ce fichier inclut des extensions de schéma pour l'analyse de système, des objets de configuration du connecteur pour Lotus Notes, des paramètres de carnet d'adresses en mode hors connexion et des paramètres appartenant aux connecteurs X.400.

Schema0.ldf

Ce fichier inclut des extensions de schéma pour des groupes de routage, des serveurs tête de pont, des conteneurs de protocole, des bases de données de messagerie, des services de listes d'adresses et des objets de configuration MTA Microsoft Exchange.

Schema5.ldf

Ce fichier inclut des extensions de schéma pour des conteneurs de protocole, des connecteurs de groupe de routage et des paramètres appartenant au moteur ESE.

Schema6.ldf

Ce fichier inclut des extensions de schéma pour des serveurs virtuels de protocole, des groupes d'administration, des connecteurs de messagerie et la banque d'informations Exchange.

Schema7.ldf

Ce fichier inclut des extensions de schéma pour des bases de données de messagerie et le Gestionnaire de boîtes aux lettres.

Schema8.ldf

Ce fichier inclut des extensions de schéma pour le Gestionnaire de boîtes aux lettres, l'analyse de système, des dossiers publics et des objets de configuration du transport SMTP.

Schema9.ldf

Ce fichier inclut des extensions de schéma pour le Connecteur de calendrier, le Connecteur pour Novell GroupWise, des listes de distribution dynamiques, des dossiers de messagerie et Outlook Mobile Access.

noteRemarque :
Tous les fichiers de schéma, du Schema1.ldf au Schema8.ldf, sont identiques pour Exchange 2000 Server et Exchange Server 2003. Le fichier Schema9.ldf contient les nouvelles extensions de schéma d'Exchange Server 2003.

Exschema.ldf

Ce fichier ajoute l'objectGUID, la signature de réplication, les attributs séparés, les attributs de noms globaux ADC au schéma pour mettre à jour un schéma de Service Pack 1 pré-Exchange 2000 avec les informations requises pour Exchange Server 2003.

noteRemarque :
Vous pouvez utiliser les fichiers .Idf en association avec les outils Active Directory de bas niveau, tels que Ldifde.exe, pour réparer un schéma Active Directory endommagé. Cependant, le dépannage du schéma Active Directory est un sujet qui n'est pas abordé dans ce guide. Notez que les modifications de schéma peuvent réinitialiser le catalogue global, dans ce cas tous les objets de destinataire doivent être de nouveau répliqués sur le catalogue global. Cette opération peut entraîner des augmentations considérables du trafic de données dans des organisations de grande taille.

DSAccess (Directory Service Access)

Les services Exchange 2003 accèdent à des informations qui sont stockées dans Active Directory et écrivent des informations dans Active Directory. Si cette communication se fait directement entre chaque service et Active Directory, Exchange 2003 risque de saturer un contrôleur de domaine Active Directory avec des demandes de communication. Un composant central est requis pour optimiser la communication avec Active Directory. Ce composant est le module DSAccess.

DSAccess est une interface API partagée qui est utilisée par plusieurs composants d'Exchange 2003 pour interroger Active Directory et obtenir des informations sur la configuration et le destinataire. DSAccess est implémenté dans DSAccess.dll qui est chargé par les composants Exchange et non-Exchange, y compris la surveillance du système, l'Agent de transfert des messages, le service de banque d'informations de Microsoft Exchange, le service Gestion de Microsoft Exchange, les services Internet (IIS) et l'infrastructure de gestion Windows (WMI). DSAccess détecte la topologie Active Directory et les contrôleurs de domaine, ainsi que les serveurs de catalogue global, puis il gère une liste des serveurs d'annuaire valides pouvant être utilisés par les composants Exchange. De plus, DSAccess maintient un cache qui sert à réduire la charge sur Active Directory en réduisant le nombre de requêtes LDAP que les composants individuels envoient aux serveurs Active Directory.

importantImportant :
DSAccess.dll est la DLL principale qui implémente DSAccess. Pour fonctionner correctement, la version de DSAccess.dll doit correspondre à celle des DLL satellites. Les DLL satellites, à savoir Dscmgs.dll et Dscperf.dll, stockent respectivement des chaînes de message de journaux des événements et des fournisseurs d'objet de performance.

DSAccess répartit les serveurs de service d'annuaire disponibles dans les trois catégories (qui peuvent se recouper) suivantes :

  • Serveurs de catalogue global   Exchange Server 2003 doit accéder aux serveurs de catalogue global pour obtenir des informations sur les adresses complètes pour tous les objets de destinataire dans la forêt. Seuls les serveurs de catalogue global contiennent un réplica complet de tous les objets du domaine et un réplica partiel de tous les objets de la forêt. Les serveurs de catalogue global qu'un serveur Exchange utilise actuellement sont appelés serveurs de catalogue global en cours d'exécution.
    La majeure partie des transactions de services d'annuaire dans un contexte utilisateur Exchange Server 2003 visent les catalogues globaux. Quel que soit le nombre de serveurs de catalogue global présents sur le site local Active Directory, un maximum de dix serveurs de catalogue global peut être ajouté à la liste de catalogue global en cours d'exécution. Si le site local ne dispose pas de serveurs de catalogue global ou si aucun des serveurs de catalogue global du site local ne réussit les tests de pertinence, DSAccess utilise alors jusqu'à 200 des serveurs de catalogue global hors site aux coûts les moins élevés. Étant donné que le serveur de service d'annuaire utilisé pour un catalogue global est également lui-même un contrôleur de domaine, ce serveur peut donc être utilisé pour remplir les deux fonctions.
  • Contrôleurs de domaine   Les contrôleurs de domaine sont utilisés pour des demandes dans un contexte utilisateur lorsque le service demandeur a une connaissance suffisante de l'emplacement de l'objet utilisateur demandé dans la recherche émise. Ces contrôleurs de domaine sont également appelés contrôleurs de domaine en cours d'exécution. Les contrôleurs de domaine en cours d'exécution sont des contrôleurs de domaine dans le domaine local qui peuvent accepter des requêtes sur le contexte d'appellation de domaine. Quel que soit le nombre de contrôleurs de domaine qui se trouvent sur le site local d'Active Directory, un maximum de 10 contrôleurs peut être ajouté à la liste de contrôleurs de domaine en cours d'exécution. Si le site local ne dispose pas de contrôleur de domaine ou si aucun des contrôleurs de domaine du site local ne réussit les tests de pertinence, DSAccess utilise les contrôleurs de domaine hors site aux coûts les moins élevés.
    La charge des requêtes adressées aux contrôleurs de domaine en cours d'exécution est équilibrée par répétitions alternées pour éviter la surcharge d'un seul contrôleur de domaine. Si les contrôleurs de domaine en cours d'exécution ne sont pas codés de manière irréversible dans le Registre, la liste de contrôleurs de domaine en cours d'exécution est réévaluée et régénérée toutes les 15 minutes à l'aide du processus de détection de topologie et des tests de pertinence.
  • Contrôleurs de domaine de configuration   Exchange Server 2003 peut lire à partir de plusieurs contrôleurs de domaine. Pour éviter des conflits lors de l'application de modifications de configuration dans Active Directory, Exchange Server 2003 écrit ses informations de configuration dans un seul contrôleur de domaine appelé contrôleur de domaine de configuration. Lors du choix d'un contrôleur de domaine de configuration dans la liste de contrôleurs de domaine en cours d'exécution, DSAccess accorde la préférence à un contrôleur de domaine sur un serveur de catalogue global. De plus, DSAccess accorde la préférence à un serveur d'annuaire du site local sur un serveur d'annuaire d'un site secondaire.
    Si le contrôleur de domaine de configuration n'est pas disponible pour Exchange Server 2003 pour une raison quelconque, DSAccess choisit un autre contrôleur de domaine en cours d'exécution comme contrôleur de domaine de configuration. Toutes les huit heures, DSAccess réévalue le rôle du contrôleur de domaine de configuration en exécutant un ensemble de tests de pertinence. Si les résultats de ces tests sont positifs, DSAccess continue à utiliser le même contrôleur de domaine de configuration. En cas d'échec des tests, DSAccess choisit un autre contrôleur de domaine dans la liste de contrôleurs de domaine en cours d'exécution comme contrôleur de domaine de configuration.

Les composants principaux d'Exchange Server 2003 s'appuient sur DSAccess pour fournir une liste actuelle des serveurs Active Directory. Par exemple, l'Agent MTA fait parvenir les requêtes LDAP à Active Directory par le biais de la couche DSAccess. Pour se connecter aux bases de données, le processus de banque d'informations utilise DSAccess afin d'obtenir d'Active Directory les informations de configuration. Pour acheminer les messages, le processus de transport utilise DSAccess afin d'obtenir les informations relatives à l'agencement des connecteurs.

DSAccess met à jour la liste des contrôleurs de domaine et de catalogues globaux disponibles lorsque des modifications de l'état du service d'annuaire sont détectées. Cette liste peut être partagée entre d'autres utilisateurs d'annuaire qui n'utilisent pas DSAccess comme passerelle pour accéder au service d'annuaire (par exemple, DSProxy et autres composants de la surveillance du système). Le service qui demande cette liste est chargé de détecter les modifications d'état ultérieures du service d'annuaire.

noteRemarque :
Si les contrôleurs de domaine et les serveurs de catalogue global ne sont pas codés de manière irréversible dans le Registre, la liste des contrôleurs de domaine et des serveurs de catalogue global est réévaluée et regénérée toutes les 15 minutes à l'aide d'un processus de détection de topologie et de tests de pertinence.

Équilibrage de la charge et basculement de connexion LDAP

Dans Exchange Server 2003, DSAccess détermine la topologie Active Directory, ouvre les connexions LDAP appropriées et résout les incidents liés au serveur. Pour chaque serveur de service d'annuaire disponible, DSAccess ouvre des connexions DLAP dédiées uniquement à chaque processus qui utilise DSAccess. DSAccess met à jour les connexions LDAP avec les informations sur l'état des services d'annuaire (en service, lent ou hors service) qu'il détecte. DSAccess utilise ces informations pour choisir la connexion LDAP à utiliser pour transférer des demandes à Active Directory. L'ensemble des connexions LDAP des contrôleurs de domaine et des serveurs de catalogue global disponibles, ainsi que les formulaires d'état associés constituent le profil DSAccess.

DSAccess prend en charge un mécanisme d'équilibrage de la charge qui distribue des demandes de service d'annuaire sur un contexte utilisateur selon des répétitions alternées au sein des connexions LDAP du profil DSAccess. L'équilibrage de la charge permet de garantir la fiabilité et l'évolutivité. Vous pouvez configurer de manière statique tous les profils du Registre afin d'utiliser uniquement un ensemble spécifique de serveurs de service d'annuaire. Cependant, l'état actuel et l'équilibrage de la charge de ces connexions peuvent varier d'un processus à l'autre (d'un profil à l'autre). Ce n'est pas le cas des demandes de contexte de configuration.

noteRemarque :
Étant donné que tous les services Exchange Server 2003 et IIS utilisent le même contexte de sécurité (le compte LocalSystem), DSAccess peut réutiliser les connexions LDAP d'une demande à l'autre. Au démarrage ou lors d'une modification de topologie, DSAccess ouvre les connexions DLAP de tous les contrôleurs de domaine et serveurs de catalogue global pertinents dans la topologie.

Lorsque l'implémentation Microsoft Windows de LDAP (WLDAP) renvoie une erreur sur l'opération LDAP, DSAccess l'analyse et détermine si elle indique que le serveur d'annuaire rencontre des problèmes. Si tel est le cas, le serveur d'annuaire est immédiatement marqué comme inadéquat et l'opération utilisateur est automatiquement testée de nouveau sur un autre serveur. Si au moins un contrôleur de domaine fonctionne dans la topologie, DSAccess peut continuer l'opération sans difficultés.

Afin de vérifier la pertinence d'un contrôleur de domaine ou d'un serveur de catalogue global, DSAccess vérifie que le serveur est accessible sur le port 389 (pour le contrôleur de domaine) et le port 3268 (pour le serveur de catalogue global) et qu'il réside dans un domaine préparé avec DomainPrep. DomainPrep garantit que la liste de contrôle d'accès (ACL) système de la stratégie de groupe est correctement configurée pour accorder l'accès à Active Directory aux services Exchange Server 2003. Les tests de pertinence de serveur sont présentés plus loin dans cette section.

tipConseil :
Pour obtenir des rapports de pertinence dans le journal des événements Applications, activez l'enregistrement des diagnostics pour la catégorie de topologie du service DSAccess du Gestionnaire système Exchange.

La topologie DSAccess contient toujours deux listes, celle « dans le site » et celle « hors du site ». La liste « dans la liste » contient les serveurs du site Active Directory local du serveur Exchange, tandis que l'autre liste (« hors du site ») contient les serveurs des autres sites Active Directory. Initialement, DSAccess utilise uniquement des serveurs du site local, mais lorsque tous les serveurs locaux d'une catégorie donnée (par exemple, des serveurs de catalogue global) sont inadéquats, DSAccess commence immédiatement à utiliser la liste « hors du site ». DSAccess vérifie néanmoins le site local toutes les cinq minutes et recommence à l'utiliser dès que c'est possible. Les demandes d'utilisateurs sont immédiatement testées de nouveau sur les serveurs « hors du site », sans que les utilisateurs ne s'en rendent compte.

Certains composants Exchange Server 2003, tels que le service du moteur de routage Exchange, s'inscrivent également auprès d'Active Directory pour que ce dernier les informe automatiquement de toute modification des informations de configuration. Ce mécanisme de notification élimine l'interrogation, mais l'inscription d'événements se fait par serveur cible. Si DSAccess marque le serveur cible comme hors service, il émet de nouveau l'inscription d'événements et informe le processus client, tel que le service du moteur de routage, d'une modification, car les valeurs analysées peuvent avoir changé au cours du processus de sélection d'un nouveau contrôleur de domaine ou serveur de catalogue global.

Détection de topologie DSAccess

Au démarrage, DSAccess utilise un processus de détection pour identifier la topologie Active Directory et évaluer la disponibilité des contrôleurs de domaine et des serveurs de catalogue global. Lorsque le démarrage est terminé (puis toutes les 15 minutes), DSAccess utilise un processus quasiment identique pour détecter de nouveau la topologie et vérifier si la disponibilité du serveur a été modifiée.

noteRemarque :
Si vous codez de manière irréversible les serveurs d'annuaire utilisés par DSAccess (comme décrit ci-après), celui-ci ignore le processus de détection et vérifie uniquement la pertinence du serveur.

La liste séquentielle suivante décrit le processus de détection et indique les différences entre la détection initiale et la détection continuelle :

  1. Le processus de surveillance du système (Mad.exe) détecte et initialise DSAccess.dll durant le démarrage.
  2. À partir du domaine local, DSAccess ouvre une connexion LDAP à un contrôleur de domaine choisi au hasard. Ce serveur est considéré comme le serveur d'amorce.
  3. DSAccess lit le Registre local pour déterminer si la topologie est codée de manière irréversible. Si tel est le cas, le processus de détection s'arrête. Si la topologie n'est pas codée de manière irréversible, DSAccess continue le processus de détection.
  4. DSAccess interroge le serveur d'amorce pour identifier les contrôleurs de domaine et les serveurs de catalogue locaux. Ensuite, DSAccess détermine la pertinence du serveur et attribue des rôles de serveur.
  5. DSAccess interroge le serveur d'amorce pour déterminer si un ou plusieurs sites secondaires sont connectés au site local. S'il existe des sites secondaires, DSAccess trie les objets siteLink pour chaque site, du coût le moins élevé au plus élevé. DSAccess place les sites aux coûts les moins élevés dans une liste de topologie secondaire.
  6. DSAccess interroge le serveur d'amorce pour identifier les contrôleurs de domaine et les serveurs de catalogue situés sur les sites de topologie secondaire.
  7. DSAccess identifie la topologie complète et compile une liste de contrôleurs de domaine en cours d'exécution et une liste de serveurs de catalogue global en cours d'exécution.

Par défaut, l'initialisation de DSAccess durant le démarrage doit se terminer en une minute, sinon DSAccess s'arrête. Une minute est généralement suffisante pour que DSAccess s'initialise. Si l'initialisation dure plus longtemps, cela peut signifier qu'il y a un problème avec le réseau ou la configuration de la topologie. Vous pouvez étendre le paramètre de délai d'attente en définissant une clé de Registre, néanmoins, vous devez tout d'abord déterminer pourquoi l'initialisation dure plus longtemps que prévu. Pour configurer le délai d'attente, utilisez le paramètre de Registre suivant.

Emplacement

HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Services\MSExchangeDSAccess

Valeur

TopoCreateTimeoutSecs

Type

REG_DWORD

Description

Définit le délai d'attente en secondes pour l'initialisation de DSAccess, par exemple 0x200. La valeur par défaut est 0x3C secondes (1 minute).

noteRemarque :
Si vous définissez le niveau d'enregistrement des diagnostics pour toutes les catégories du service MSExchangeDSAccess sur Maximum, le Gestionnaire système Exchange obtient automatiquement des informations détaillées sur l'initialisation de DSAccess et les place dans le journal des événements Applications.

Détection initiale et détection continuelle

Lorsque DSAccess a détecté la topologie Active Directory, il détermine si la liste de contrôleurs de domaine et de serveurs de catalogue global détectée est utilisable. Au cours de la détection initiale et de la détection continuelle, DSAccess détermine la pertinence du serveur en exécutant une série de tests de pertinence. Les tests de pertinence sont répartis en deux catégories : les tests matériels et les tests logiciels. Les tests matériels déterminent si le contrôleur de domaine ou le catalogue global est un candidat viable à utiliser. Si le serveur échoue les tests matériels, il est considéré comme inutilisable et est supprimé de la liste des serveurs détectés. Les tests logiciels ne sont pas exécutés.

DSAccess exécute les tests de pertinence matériels suivants :

  • Capacités de catalogue global   DSAccess détermine si le serveur d'annuaire se spécifie comme serveur de catalogue global en déterminant si l'attribut isGlobalCatalogReady sur l'objet RootDSE du serveur est défini sur TRUE. Si l'attribut est défini sur TRUE, le serveur d'annuaire est considéré comme un contrôleur de domaine valide et utilisable.

  • Accessibilité   DSAccess utilise le protocole ICMP (Internet Control Message Protocol) pour solliciter chaque serveur et vérifier qu'il est disponible. DSAccess vérifie également que le serveur d'annuaire est accessible sur le port 389 (pour les contrôleurs de domaine) et le port 3268 (pour les serveurs de catalogue global).
    En utilisant le protocole ICMP pour déterminer si le serveur est disponible, vous risquez de créer un problème si toutes les connexions de votre réseau ne prennent pas en charge ce protocole. Par exemple, un serveur Exchange peut résider dans un réseau de périmètre, ce qui ne comporte pas de connectivité ICMP entre le serveur Exchange et les contrôleurs de domaine. Dans ce cas, vous devez désactiver la vérification du protocole ICMP et définir le paramètre de Registre suivant sur zéro.

    Emplacement

    HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Services\MSExchangeDSAccess

    Valeur

    LdapKeepAliveSecs

    Type

    REG_DWORD

    Données de la valeur

    0x0

    Description

    Si la clé de Registre n'existe pas ou n'est pas définie sur 0, DSAccess utilise le protocole Ping.

    Pour plus d'informations sur l'utilisation de la clé de Registre LdapKeepAliveSecs, voir l'article 320529 de la Base de connaissances Microsoft XADM: Using DSAccess in a Perimeter Network Firewall Scenario Requires a Registry Key Setting.

    CautionAttention :
    Une modification incorrecte du Registre peut provoquer de graves problèmes dont la résolution peut impliquer la réinstallation du système d'exploitation. Les problèmes résultant d'une modification incorrecte du Registre peuvent même ne pas avoir de solution. Avant de modifier le Registre, sauvegardez toutes les données importantes.
  • Autorisation SACL de stratégie de groupe   En même temps que les autorisations de liste de contrôle d'accès (ACL) standard, le programme d'installation accorde à tous les serveurs exécutant Exchange Server 2003 l'autorisation de la liste de contrôle d'accès de sécurité (SACL) pour afficher les attributs ntSecurityDescriptor. L'autorisation est accordée via le privilège SeSecurityPrivilege. DSAccess lit le descripteur de sécurité de l'objet de partition d'annuaire de configuration, sur le serveur, pour vérifier que la liste SACL est lisible. Si ce n'est pas le cas, DSAccess considère que le serveur est inadéquat.

  • Données critiques   Le serveur d'annuaire doit se trouver dans un domaine où DomainPrep a été exécuté. Le domaine doit contenir l'objet de serveur Exchange Server 2003 du conteneur de configuration Exchange.

  • Synchronisation   DSAccess vérifie que le serveur est synchronisé en déterminant si l'attribut isSynchronized de l'objet rootDSE du serveur est défini sur TRUE.

  • Netlogon   DSAccess envoie un appel de procédure distante (RPC) DSGetDcName au serveur d'annuaire pour tester sa pertinence générale. Lorsque le serveur d'annuaire n'est pas synchronisé, qu'il ne dispose pas de suffisamment d'espace disque ou rencontre d'autres problèmes, il ne s'identifie pas en tant que serveur d'annuaire.
    Dans un réseau de périmètre où le trafic RPC n'est pas autorisé, la vérification NetLogon ne peut pas s'effectuer. Cependant, la vérification NetLogon continue à émettre des appels RPC jusqu'à ce qu'il échoue, ce qui peut durer longtemps. Étant donné que les vérifications NetLogon entraînent une altération des performances, vous devez empêcher DSAccess d'émettre des vérifications NetLogon en créant la clé de Registre suivante.

    Emplacement

    HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Services\MSExchangeDSAccess

    Valeur

    DisableNetLogonCheck

    Type

    REG_DWORD

    Données de la valeur

    0x0

    Description

    Si la clé de Registre n'existe pas ou n'est pas définie sur 0, DSAccess effectue la vérification Netlogon.

    Pour plus d'informations, voir l'article 320228 de la Base de connaissances Microsoft XGEN: The "DisableNetLogonCheck" Registry Value and How to Use It.

  • Version du système d'exploitation   Exchange Server 2003 ne peut utiliser que des contrôleurs de domaine et des serveurs de catalogue global exécutant Microsoft Windows Server 2003 ou Windows 2000 Server Service Pack 3 (ou version ultérieure). DSAccess détermine si le serveur d'annuaire remplit ces conditions.

Lorsque les tests matériels sont terminés, DSAccess exécute une série de tests logiciels pour déterminer les serveurs d'annuaire pouvant gérer la charge supplémentaire qu'Exchange Server 2003 leur impose. Pour déterminer ces serveurs, DSAccess exécute les tests de pertinence logiciels suivants :

  • Pondération DNS   DSAccess utilise la valeur de pondération des contrôleurs de domaine et des serveurs de catalogue global, telle qu'elle est spécifiée dans les enregistrements de ressource de chaque serveur dans DNS, pour déterminer le serveur que le client doit choisir. Une pondération élevée implique qu'il est plus probable que DSAccess choisit un serveur. Si DSAccess ne peut pas lire la pondération, il utilise 100 comme pondération par défaut.
  • Propriétaire du rôle de contrôleur de domaine principal FSMO   Si votre topologie contient des serveurs exécutant Windows NT Server, la charge de travail du serveur d'annuaire doté du rôle de contrôleur de domaine principal (PDC) FMSO (Flexible Single Master Operation) va augmenter considérablement et risque de le rendre inutilisable par Exchange Server 2003. Pour cette raison, DSAccess effectue un test de pertinence logiciel pour localiser le propriétaire du rôle PDC FSMO, afin qu'il puisse le supprimer de la liste des serveurs d'annuaire pertinents.
  • Temps de réponse   DSAccess exécute une requête LDAP sur le serveur d'annuaire pour vérifier son temps de réponse. Un temps de réponse supérieur à deux secondes entraîne l'échec du test de pertinence logiciel.
    noteRemarque :
    DSAccess inclut la prise en charge de l'équilibrage de charge complet par répétitions alternées et le basculement vers un autre serveur d'annuaire, si le serveur en cours d'utilisation devient inutilisable. Ces fonctionnalités sont désactivées lorsqu'Exchange Server 2003 s'exécute sur un contrôleur de domaine ou un serveur de catalogue global.

Codage de serveurs DSAccess de manière irréversible

DSAccess permet à un administrateur de configurer de manière statique des contrôleurs de domaine et des catalogues globaux spécifiques, utilisés par DSAccess, et de désactiver le processus de détection automatique de topologie. Ces entrées codées de manière irréversible sont configurées à l'aide de l'interface utilisateur DSAccess du Gestionnaire Système Exchange, comme l'illustre la figure suivante.

3c5b4709-c63d-4bb4-a68f-489625736030

Au cours de l'initialisation, DSAccess lit le Registre pour déterminer les contrôleurs de domaine ou les serveurs de catalogue global configurés de manière statique. S'il existe des contrôleurs de domaine ou des serveurs de catalogue global configurés de manière statique, la détection dynamique de topologie ne s'effectue pas. Si aucun serveur d'annuaire statique n'est identifié, DSAccess détecte de manière dynamique les serveurs de service d'annuaire dans la topologie.

Lorsque DSAccess est configuré de manière statique, les fonctionnalités d'équilibrage de charge et de basculement de DSAccess ne se déclenchent pas et aucun autre catalogue de domaine ou global n'est utilisé ou détecté. Par conséquent, si tous les catalogues globaux ou de domaine configurés de manière statique sont déconnectés ou inaccessibles, les opérations de DSAccess échouent. Si les catalogues globaux sont configurés de manière statique mais qu'aucun catalogue de domaine n'est spécifié dans le Registre, tout contrôleur de domaine disponible est détecté de manière dynamique et utilisé. De même, si des catalogues de domaine sont configurés de manière statique mais qu'aucun catalogue global n'est spécifié dans le Registre, tout catalogue global disponible est détecté de manière dynamique et utilisé. Si le contrôleur de domaine de configuration n'est pas configuré de manière statique, il est supprimé de la liste des contrôleurs de domaine disponibles (qu'il s'agisse d'une liste configurée de manière dynamique ou statique).

Profils DSAccess

Les contrôleurs de domaine et les catalogues globaux utilisés pour les demandes dans un contexte utilisateur dépendent du profil. Par conséquent, les valeurs du Registre correspondant à ces paramètres se trouvent dans une sous-clé HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeDSAccess\Profiles\Default. Les clés de Registre suivantes sont requises pour configurer de manière statique des contrôleurs de domaine et des serveurs de catalogue global utilisables par DSAccess.

Emplacement

MSExchangeDSAccess\Profiles\Default\<Name of DC>

Valeur

IsGC

Type

REG_DWORD

Données de la valeur

0x0

Emplacement

MSExchangeDSAccess\Profiles\Default\<Name of DC>

Valeur

HostName

Type

REG_SZ

Données de la valeur

<name of DC>

Emplacement

MSExchangeDSAccess\Profiles\Default\<Name of DC>

Valeur

DSType

Type

REG_SZ

Données de la valeur

0

Emplacement

MSExchangeDSAccess\Profiles\Default\<Name of DC>

Valeur

PortNumber

Type

REG_DWORD

Données de la valeur

0x00000185 (389)

Emplacement

MSExchangeDSAccess\Profiles\Default\<Name of GC>

Valeur

IsGC

Type

REG_DWORD

Données de la valeur

0x1

Emplacement

MSExchangeDSAccess\Profiles\Default\<Name of GC>

Valeur

HostName

Type

REG_SZ

Données de la valeur

<name of GC>

Emplacement

MSExchangeDSAccess\Profiles\Default\<Name of GC>

Valeur

DSType

Type

REG_SZ

Données de la valeur

0

Emplacement

MSExchangeDSAccess\Profiles\Default\<Name of GC>

Valeur

PortNumber

Type

REG_DWORD

Données de la valeur

0x00000cc4 (3268)

Spécification du contrôleur de domaine de configuration

Le contrôleur de domaine de configuration utilisé par DSAccess peut être défini selon l'une des trois méthodes suivantes :

  • Configuré de manière statique dans le Registre   Le contrôleur de domaine de configuration est partagé entre tous les profils. Par conséquent, les paramètres de Registre pour le contrôleur de domaine de configuration sont spécifiés sous la sous-clé \Instance0 comme suit.

    Emplacement

    MSExchangeDSAccess\Instance0

    Valeur

    ConfigDCHostName

    Type

    REG_SZ

    Données de la valeur

    <Name of config DC>

    Emplacement

    MSExchangeDSAccess\Instance0

    Valeur

    ConfigDCPortNumber

    Type

    REG_DWORD

    Données de la valeur

    0x00000185 (389)

  • Détecté de manière dynamique   Si le contrôleur de domaine de configuration n'est pas spécifié de manière statique, DSAccess utilise la détection dynamique de topologie pour localiser un contrôleur de domaine de configuration. DSAccess utilise le contrôleur de domaine sélectionné pendant huit heures, après quoi il choisit de manière aléatoire un nouveau contrôleur de domaine de configuration. DSAccess choisit un nouveau contrôleur de domaine de configuration plus tôt si la surveillance du système est redémarrée, ou si le contrôleur de domaine de configuration en cours d'utilisation est défaillant ou s'arrête.

  • Par la surveillance du système au démarrage   Dans Exchange Server 2003, le processus de surveillance du système choisit le contrôleur de domaine de configuration uniquement lors du premier démarrage du service, qui se produit au cours de l'installation ou de la mise à niveau. Dans tous les cas, le choix de la surveillance du système est ignoré si le contrôleur de domaine de configuration est configuré de manière statique dans le Registre. DSAccess prend une entrée de contrôleur de domaine de configuration statique comme suggestion. Ainsi, si le contrôleur de domaine de configuration est configuré de manière statique, DSAccess le choisit pour les demandes de contexte de configuration. Si ce contrôleur de domaine cesse d'être disponible, un autre contrôleur de domaine est choisi dans la liste des contrôleurs de domaine en cours d'exécution. Dans ce cas, DSAccess ignore le contrôleur de domaine de configuration en choisissant un contrôleur de domaine disponible et en agissant comme si les informations sur le contrôleur de domaine de configuration dans le Registre n'existaient pas.

Attribution de rôles de serveur par DSAccess

Les exemples suivants décrivent différentes configurations Active Directory et expliquent comment DSAccess attribue des rôles de serveur selon chaque cas. Dans ces exemples, il est supposé que tous les contrôleurs de domaine et les catalogues globaux exécutent le Service Pack 3 Windows 2000 Server (ou version ultérieure), que tous les tests de pertinence sont réunis et qu'aucun contrôleur de domaine statique n'est codé de manière irréversible (c'est-à-dire que DSAccess effectue de la détection dynamique de topologie).

Exemple 1 – Topologie de domaine simple unique

La figure suivante illustre une forêt unique avec un domaine unique composé de deux sites. Le site A contient un contrôleur de domaine unique et un catalogue global unique, le site B contient trois contrôleurs de domaine et deux catalogues globaux.

a9531fbe-3b39-4438-a1da-9f9ca4b19466

DSAccess exécuté sur les serveurs Exchange Server 2003 du site A va détecter la topologie indiquée dans le tableau suivant.

Topologie du site A

Type de contrôleur de domaine Serveur

Contrôleur de domaine de configuration

Contrôleur de domaine 1 ou catalogue global 1

Contrôleurs de domaine en cours d'exécution

Contrôleur de domaine 1 et catalogue global 1

Catalogues globaux en cours d'exécution

Catalogue global 1

DSAccess exécuté sur les serveurs Exchange Server 2003 du site B va détecter la topologie indiquée dans le tableau suivant.

Topologie du site B

Type de contrôleur de domaine Serveur

Contrôleurs de domaine de configuration

Contrôleurs de domaine 2, 3 et 4

Catalogue global 2 ou 3

Contrôleurs de domaine en cours d'exécution

Contrôleurs de domaine 2, 3 et 4

Catalogues globaux 2 et 3

Catalogues globaux en cours d'exécution

Catalogues globaux 2 et 3

Dans tous les cas, l'ordre des serveurs répertoriés est important. Les serveurs sont répertoriés et utilisés dans l'ordre dans lequel ils ont été détectés et signalés comme pertinents par DSAccess.

Exemple 2 – Topologie de domaine complexe

La figure suivante illustre une topologie plus complexe qui inclut deux domaines et deux sites, le site A s'étendant sur les deux domaines.

1131b948-94d0-4f6e-9f5b-2e97bd608f96

DSAccess exécuté sur les serveurs Exchange Server 2003 du domaine 1 et du site A va détecter la topologie indiquée dans le tableau suivant.

Topologie du domaine 1 et du site A

Type de contrôleur de domaine Serveur

Contrôleur de domaine de configuration

Contrôleurs de domaine 1, 2, 3 et 4

Catalogues globaux 1, 2 ou 3

Contrôleurs de domaine en cours d'exécution

Contrôleurs de domaine 1, 2, 3 et 4

Catalogues globaux 1, 2 et 3

Catalogues globaux en cours d'exécution

Catalogues globaux 1, 3 et 2

DSAccess exécuté sur les serveurs Exchange Server 2003 du domaine 2 et du site A va détecter la topologie indiquée dans le tableau suivant.

Topologie du domaine 2 et du site A

Type de contrôleur de domaine Serveur

Contrôleur de domaine de configuration

Contrôleurs de domaine 1, 2, 3, 4

Catalogues globaux 1, 2 ou 3

Contrôleurs de domaine en cours d'exécution

Contrôleurs de domaine 1, 2, 3 et 4,

Catalogues globaux 1, 2 et 3

Catalogues globaux en cours d'exécution

Catalogues globaux 2, 1 et 3

DSAccess exécuté sur les serveurs Exchange Server 2003 du domaine 2 et du site B va détecter la topologie indiquée dans le tableau suivant.

Topologie du domaine 2 et du site B

Type de contrôleur de domaine Serveur

Contrôleur de domaine de configuration

Contrôleur de domaine 5

Catalogue global 4

Contrôleur de domaine en cours d'exécution

Contrôleur de domaine 5

Catalogue global 4

Catalogues globaux en cours d'exécution

Catalogue global 4

Les serveurs sont une fois de plus répertoriés et utilisés dans l'ordre dans lequel ils ont été détectés et signalés comme pertinents.

Cache d'accès à l'annuaire

Le cache DSAccess est une mémoire cache interne du serveur Exchange qui contient des enregistrements d'utilisateur et de configuration récupérés dans Active Directory. Les enregistrements du cache sont accessibles via le nom unique (DN) de l'objet, l'identificateur global unique (GUID) ou une clé créée à partir de la portée, du nom unique de base (BaseDN) et du filtre utilisé pour rechercher cet objet dans Active Directory. Les accès ultérieurs à l'aide du même nom DN, identificateur GUID ou de la même clé vont rechercher l'enregistrement dans le cache. Comme indiqué précédemment, DSAccess est une interface API partagée qui est utilisée par plusieurs processus sur un ordinateur Exchange Server 2003. Le tableau suivant répertorie les processus qui chargent DSAccess.dll dans leur segment de mémoire et tirent parti de la mise en cache d'informations provenant d'Active Directory.

Processus chargeant DSAccess.dll

Processus Description

Mad.exe

Service Surveillance du système Microsoft Exchange

Store.exe

Service de banque d'informations de Microsoft Exchange

EMSMTA.exe

Service Piles MTA Microsoft Exchange

ExMgmt.exe

Service Gestion d'Exchange

RESvc.exe

Service du moteur de routage Exchange

Inetinfo.exe ou W3WP.exe

Services Internet (IIS) et processus de travail

Winmgmt.exe

Service Infrastructure de gestion Windows (WMI)

Le tableau suivant répertorie les divers composants Exchange qui utilisent DSAccess pour acquérir des informations de configuration et utilisateur.

Composant Exchange utilisant DSAccess

Composant Recourt à DSAccess pour les actions suivantes

Service de mise à jour de métabase (DS2MB)

Modifications d'annuaire suivies au moyen d'un numéro de séquence de mise à jour

Moteur de routage Exchange (RESVC)

Recherche d'utilisateurs et de configurations

Catégoriseur SMTP (SMTP CAT)

Liste des serveurs de catalogue global dans la topologie

Proxy du service d'annuaire (DSProxy)

Liste des serveurs de catalogue global dans la topologie

Banque d'informations Exchange

Recherche d'utilisateurs et de configurations

WebDAV

Recherche d'utilisateurs et de configurations

Agent de transfert des messages (MTA)

Recherche d'utilisateurs et de configurations

Le cache DSAccess permet la mise en cache des recherches d'annuaire effectuées par ces composants pendant une période de temps. Si, au cours de cette période, un autre processus demande les mêmes informations, celles-ci peuvent être récupérées du cache DSAccess, sans qu'il soit nécessaire de répéter la même requête sur un catalogue global en cours d'exécution. Mis à part les recherches du carnet d'adresses des clients MAPI et de certaines parties du routage entrant et sortant SMTP, tous les accès d'annuaire sont traités par le processus DSAccess et sont mis en cache.

Par défaut, les entrées d'annuaire sont mises en cache pendant 15 minutes. La taille par défaut du cache utilisateur est de 140 méga-octets (Mo) et celle du cache de configuration de 50 Mo. Le nombre d'utilisateurs, le nombre maximum d'entrées, la taille maximale de la mémoire cache et le délai d'expiration du cache constituent tous des paramètres qui peuvent affecter la taille et les performances optimales du cache DSAccess.

Les clés de Registre suivantes (aucune n'est présente par défaut) fournissent un contrôle de bas niveau du cache DSAccess pour les données de configuration.

Emplacement

MSExchangeDSAccess\Instance0

Valeur

CacheTTLConfig

Type

REG_DWORD

Données de la valeur

0x384 (900 seconds)

Description

Utilisée pour spécifier la durée de vie (TTL) des données de configuration présentes dans le cache

Emplacement

MSExchangeDSAccess\Instance0

Valeur

MaxEntriesConfig

Type

REG_DWORD

Données de la valeur

0 (no limit)

Description

Utilisée pour spécifier le nombre maximum d'entrées de données de configuration dans le cache

Les clés de Registre suivantes (aucune n'est présente par défaut) fournissent un contrôle de bas niveau du cache DSAccess pour les données utilisateur.

Emplacement

MSExchangeDSAccess\Instance0

Valeur

CacheTTLUser

Type

REG_DWORD

Données de la valeur

0x258 (600 seconds)

Description

Utilisée pour spécifier la durée de vie (TTL) des données utilisateur présentes dans le cache

Emplacement

MSExchangeDSAccess\Instance0

Valeur

MaxEntriesUser

Type

REG_DWORD

Données de la valeur

0 (no limit)

Description

Utilisée pour spécifier le nombre maximum d'entrées de données utilisateur dans le cache

Préchargement de DSAccess

Vous devez précharger des filtres de recherche pour éviter d'exécuter plusieurs instances de recherche en même temps dans Active Directory. Cela se produit lorsque plusieurs filtres de recherche sont émis sur le même objet utilisateur. Vous pouvez activer le préchargement par le biais des clés de Registre ci-après. Elles définissent la portée, le nom unique de base (BaseDN) et le filtre de recherche.

CautionAttention :
Une modification incorrecte du Registre peut provoquer de graves problèmes dont la résolution peut impliquer la réinstallation du système d'exploitation. Les problèmes résultant d'une modification incorrecte du Registre peuvent même ne pas avoir de solution. Avant de modifier le Registre, sauvegardez toutes les données importantes.

Les valeurs de Registre suivante peuvent être utilisées pour précharger le cache DSAccess.

Emplacement

MSExchangeDSAccess

Valeur

PreloadBaseDNs

Type

REG_MULTI_SZ

Données de la valeur

BaseDN value (for example, DC=contoso,DC=com)

Description

Identifie l'objet de conteneur utilisé en tant que racine de la requête. Il s'agit d'un paramètre de chaînes multiples. Chaque BaseDN doit correspondre à un filtre préchargé unique. Cela signifie que les noms BaseDN doivent correspondre exactement à la chaîne de filtrage.

Emplacement

MSExchangeDSAccess\

Valeur

PreloadFilters

Type

REG_MULTI_SZ

Données de la valeur

A filter string, for example, legacyExchangeDN=%

Description

DSAccess lit le Registre et interprète le signe pourcentage (%) comme un paramètre ouvert à déterminer. Lorsqu'une recherche actuelle est émise, l'enregistrement renvoyé de l'annuaire est analysé et la valeur de cet attribut, spécifiée dans le filtre préchargé, est insérée dans l'entrée de recherche. Ensuite, des pointeurs sont définis sur l'enregistrement d'utilisateur applicable. Comme avec toutes les modifications du Registre, mettez le Registre à jour avec beaucoup de prudence. Tel que les autres services Exchange, DSAccess ne contrôle pas la validité des serveurs Active Directory qui sont spécifiés dans le Registre et il ne détecte pas les fautes d'orthographe ou autres erreurs que celui-ci peut contenir. Ces valeurs qui sont remplies pour le préchargement sont définies de manière optimale pour les recherches Exchange les plus courantes.

Diverses transactions Exchange peuvent déclencher un événement de préchargement mais des critères spécifiques doivent être respectés. Ces événements se produisent dans l'ordre suivant :

  1. Une recherche d'Active Directory est effectuée. Si cette recherche remplit les trois conditions ci-après, le cache DSAccess est chargé :
    • Le nom unique doit être renvoyé à partir d'une recherche de partition d'annuaire utilisateur.
    • Le nom unique résultant doit contenir le BaseDN spécifié dans les paramètres de Registre préchargés. Si, par exemple, la recherche actuelle spécifie un BaseDN qui est plus général que le BaseDN préchargé, le préchargement n'a pas lieu.
    • L'enregistrement renvoyé est analysé et les attributs spécifiés dans la chaîne de recherche préchargée sont extraits. Les attributs nécessaires à l'élaboration du filtre de recherche doivent exister. Dans l'exemple de recherche multiplexée qui suit, au moins un des attributs doit exister :
      (|(objectGuid=%) (msExchMailboxGuid=%))
      Étant donné l'ambiguïté du résultat renvoyé, l'attribut de la chaîne du filtre préchargé ne doit pas être à valeurs multiples. Par exemple, proxyAddresses = % n'est pas un filtre de recherche préchargé valide car proxyAddresses est un attribut à valeurs multiples et DSAccess ne sait pas quelle valeur utiliser pour la valeur à l'ouverture.
  2. Une entrée de recherche est établie à partir de la portée, du nom BaseDN, des attributs et de la chaîne de filtrage, puis elle est liée à cette entrée de nom unique dans le cache. Par exemple :
    [scope = Whole Subtree] / [baseDN = DC=mydom,DC=com] / [filter = (objectClass=myclass)]

Les processus DSAccess projettent des demandes de recherche Active Directory sur des filtres préchargés et des noms BaseDN en utilisant le cache plutôt qu'Active Directory.