Home  News


La fonctionnalité Autodiscover dans Exchange Server 2010 (FR)
  
I.   Présentation générale :
 
La fonctionnalité « Autodisover » a été introduite avec les solutions Exchange Server 2007 et Outlook 2007. L’objectif de cette dernière est de configurer automatiquement les comptes de messagerie sur Outlook 2007 ou version ultérieure.
 
Cette fonctionnalité est basée sur l’utilisation du Microsoft IIS. En effet, il existe un répertoire virtuel nommé « Autodiscover » dédié pour cette dernière. Chaque serveur hébergeant ce répertoire virtuel est appelé serveur Autodiscover.
 
Utilisation de Powershell pour créer un répertoire virtuel d'Autodiscover sur Exchange Server 2010 :
Utilisation de Powershell pour supprimer un répertoire virtuel pour Autodiscover sur Exchange Server 2010 :
Remarque : Outlook peut se baser sur l’utilisation d’un fichier XML local pour l’auto-configuration. Pour des raisons de sécurité et pour plus de contrôle de configuration, le serveur Autodiscover ignore toujours ce fichier de configuration s’il est déjà présent.
 
Utilisation de la base de registres pour configurer Outlook 2010 par un fichier XML local:

Pour qu’Outlook bénéficie de la configuration automatique, il faut que ce dernier puisse localiser un serveur Autodiscover. La localisation peut être à travers :
  • L’utilisation des points SCP
  • L’utilisation du système DNS
  • L’utilisation des redirections HTTP et DNS
Les modules suivants expliquent, en détail, le principe d’utilisation des différentes méthodes de localisation du serveur Autodiscover et de l’utilisation des « Outlook Providers ».
 

II.   Utilisation d’Active Directory pour la fonctionnalité Autodiscover :


L’utilisation du service d’annuaire Active Directory pour la fonctionnalité Autodiscover se base sur l’utilisation des objets SCP (Service Connection Pointer). Il existe deux types d’objets SCP :
  • Un objet de définition d’un service de connexion : est créé par Microsoft Exchange Client Access Server (CAS) au niveau de l’installation. L’objet SCP redirige alors le client Outlook vers https://CASserver/autodiscover/autodiscover.xml (Où CASserver est un serveur CAS exécutant le service Web Autodiscover).
  • Un objet de référence à un service : Si les serveurs Exchange Server n’existent pas dans la même forêt Active Directory que celle de l’utilisateur du client Outlook, un objet de référence de service peut être créé pour rediriger ce client vers son environnement Exchange Server. Sachant que les objets de référence aux services sont créés en se basant sur les suffixes des adresses SMTP des clients, plusieurs objets de ce type peuvent être créés dans le même domaine Active Directory (Chaque objet peut faire référence à un domaine ou un ensemble de domaines SMTP).
          1.   Utilisation des objets SCP en tant qu’objets de définition d’un service de connexion :
 

Supposons que nous avons un nouvel utilisateur dans notre entreprise disposant d’un compte utilisateur appartenant à la forêt Active Directory utilisée pour la solution Exchange Server et que nous souhaitons que son compte de messagerie Outlook soit configuré avec le minimum d’effort possible.

 
Si cet utilisateur ouvre une session en utilisant ce compte, Outlook  interroge Active Directory pour voir s’il existe un objet SCP. Cet objet SCP contient les informations nécessaires sur le serveur Autodiscover qu’Outlook doit faire référence pour l’extraction des paramètres de configuration.

Ces informations sont représentées sous forme d’attributs Active Directory qui sont les suivants :

  • « Keywords » : Cet attribut est utilisé pour définir le site Active Directory du serveur Autodiscover. La mise à jour de cet attribut est manuelle.
  • « ServiceBindingInformation » : Cet attribut est utilisé pour stocker l’URL https://CASserver/autodiscover/autodiscover.xml (Où CASserver est un serveur CAS exécutant le service Web Autodiscover).

Le principe suivant est alors utilisé :

  • Si un serveur Autodiscover est présent dans le site Active Directory du poste client, Outlook essaye de l’utiliser.
  • Si aucun serveur Autodiscover n’est présent ou joignable au niveau du site Active Directory du poste client, Outlook essaye de localiser un serveur Autodiscover dans le site Active Directory le plus proche.
Remarque 1 : Si deux points SCP sont présents dans le même site Active Directory, le point SCP du serveur Exchange Server disposant de la valeur la plus faible de l’attribut « WhenCreated » est le point privilégié pour l’extraction des informations sur le serveur Autodiscover.
 
Remarque 2: Si le domaine Active Directory utilisé n’est pas joignable, la recherche d’objets SCP dans ce dernier se terminera par un échec.
 
La figure suivante représente le processus d’utilisation des points SCPs (Objet de définition d’un service de connexion) pour localiser un serveur Autodiscover se trouvant dans le même site Active Directory que le client (« Site1 ») :
 

 
Figure 1 : Figure représentative du processus de localisation d’un serveur Autodiscover en utilisant les points SCP
 

Nom du point SCP

Attribut « WhenCreated »

Attribut « Keywords »

Attribut « ServiceBindingInformation »

VAN-EX1

01 / 04 / 2012 08 :15 :33 Paris, Madrid

Site=Site1 ; 77378F46-2C66-4aa9-A6A6-3E7A48B19596

https://van-ex1.adatum.com/Autodiscover/Autodiscover.xml

VAN-EX2

02 / 04 / 2012 10 :24 :12 Paris, Madrid

Site=Site1 ; 77378F46-2C66-4aa9-A6A6-3E7A48B19596

https://van-ex2.adatum.com/Autodiscover/Autodiscover.xml

VAN-EX3

01 / 03 / 2012 22 :06 :54 Paris, Madrid

Site=Site2 ; 77378F46-2C66-4aa9-A6A6-3E7A48B19596

https://van-ex3.adatum.com/Autodiscover/Autodiscover.xml

Le processus utilisé est le suivant :

  1. Le client essaye d’utiliser le point SCP du serveur « VAN-EX1 » vu qu’il se trouve au niveau du site « Site1 » et que la valeur de l’attribut « WhenChanged » est la plus faible. Outlook reçoit alors l’URL « https://van-ex1.adatum.com/Autodiscover/Autodiscover.xml » et essaye de l’utiliser pour l’extraction du fichier de configuration.
  2. Si le serveur « VAN-EX1 » n’est pas joignable alors le client essaye d’utiliser le point SCP du serveur « VAN-EX2 » vu qu’il se trouve au niveau du site « Site 1 » et que la valeur de l’attribut « WhenChanged » est la plus faible après l’exclusion du point SCP du serveur « VAN-EX1 ». Outlook reçoit alors l’URL « https://van-ex2.adatum.com/Autodiscover/Autodiscover.xml » et essaye de l’utiliser pour l’extraction du fichier de configuration.
  3. Si le serveur « VAN-EX2 » n’est pas joignable alors le client essaye d’utiliser le point SCP du serveur « VAN-EX3 » vu qu’il se trouve au niveau du site « Site 1 ». Outlook reçoit alors l’URL « https://van-ex3.adatum.com/Autodiscover/Autodiscover.xml » et essaye de l’utiliser pour l’extraction du fichier de configuration.

Remarque :

Le fichier de configuration reçu par le client dépend de l’adresse SMTP utilisée. Outlook peut déterminer l’adresse de messagerie de l’utilisateur ayant une session ouverte sur un domaine Active Directory en se basant sur une requête de lecture de l’attribut « mail » de ce dernier. Ce dernier sera alors utilisé au niveau de la communication avec le serveur Autodiscover.
 

Figure 2 : Interface de propriétés du compte de l’utilisateur « George Schaller » en utilisant l’utilitaire ADSIEdit.msc
 
Pour répartir la charge du trafic Autodiscover sur deux ou plusieurs serveurs Exchange Server, il suffit d’utiliser un équilibreur de charge matériel ou logiciel (Ou même en utilisant le système DNS avec le principe du Round Robin) et d’utiliser la cmdlet Set-ClientAccessServer avec l’option AutoDiscoverServiceInternalUri (L’utilisation de l’option AutoDiscoverServiceInternalUri modifiera la valeur de l’attribut « Keywords » du serveur cible) pour spécifier l’URL Autodiscover de l’équilibreur de charge (Exemple : https://van-ex.Adatum.com/Autodiscover/Autodiscover.xml).
 
Utilisation de Powershell pour modifier l'URL interne et le site Active Directory d'un serveur Autodiscover :
 
Utilisation d’ADSI pour vérifier les propriétés d'un point SCP objet de définition d’un service de connexion :

          2.   Utilisation des objets SCP en tant que point de référence aux serveurs Autodiscover :

 
Certaines entreprises favorisent l’utilisation d’une architecture composée d’une forêt Active Directory pour les utilisateurs et d’une autre forêt Active Directory pour Exchange Server. Pour ce type d’architectures, il est possible de configurer un point de référence au service Autodiscover dans la forêt Active Directory utilisée pour les utilisateurs. Une fois créé, les clients Outlook demandant une configuration basée sur l’utilisation de la découverte automatique vont être redirigés, en utilisant le service d’annuaire Active Directory, vers les serveurs d’accès client Exchange Server de la forêt dédiée pour Exchange Server.
 
Le schéma suivant représente le processus utilisé pour l’accès au service Autodiscover par ce type de clients :
 

 
Figure 3 : Figure représentative du processus de localisation d’un serveur Autodiscover dans une forêt Active Directory différente de la forêt des utilisateurs Exchange
 

Le processus utilisé est alors le suivant :

  1. Le client contacte son domaine Active Directory pour localiser un serveur Autodiscover. Le serveur contrôleur de domaine ayant reçu la demande vérifie si le domaine SMTP du client est un domaine pour lequel un point de référence au service Autodiscover existe (La vérification est basée sur l’utilisateur de l’attribut « Keywords ») et répond par la valeur de l’attribut « serviceBindingInformation » (LDAP://ADATUM.COM)
  2. Le client contacte « ADATUM.COM » et reçoit comme réponse l’URL à utiliser pour le service autodiscover (https://VAN-EX1.ADATUM.COM/Autodiscover/Autodiscover.xml)
  3. Le client utilise l’URL https://VAN-EX1.ADATUM.COM/Autodiscover/Autodiscover.xml pour configurer Outlook
Si ce processus échoue, Outlook utilisera le système DNS pour localiser un autre serveur Autodiscover.
 
Utilisation de Powershell pour créer/m.à.j. un point SCP objet de référence Autodiscover dans une forêt A.D. :
 

Un point de référence au service Autodiscover est principalement basé sur l’utilisation de deux attributs :

  • Keywords : Contient les noms des domaines SMTP pour lesquels la forêt Active Directory pour Exchange Server fait autorité
  • serviceBindingInformation : Contient le nom de la forêt à contacter en utilisant les requêtes LDAP

 

Utilisation d’ADSI pour vérifier les propriétés d'un point SCP objet de référence au service Autodiscover:
 

III.   Utilisation du système DNS pour la fonctionnalité Autodiscover :

 
Si Outlook n’est pas apte de contacter le service d’annuaire Active Directory pour la localisation des serveurs Autodiscover (Exemple : Le poste client se trouve à l’extérieur de l’entreprise ou se trouve dans un Workgroup), le système DNS sera utilisé pour la fonctionnalité Autodiscover.
 
Le processus suivant est alors adopté :
  • Le client Outlook envoi un HTTPS POST vers le FQDN (Fully Qualified Domain Name) de son suffixe SMTP (Exemple : Pour une adresse de messagerie ahmed.malek@TUNIT.TN, Outlook envoi un HTTPS POST vers TUNIT.TN)
  • Si l’auto-configuration n’a pas été réalisée en utilisant la première étape, le client Outlook envoi un HTTPS POST vers autodiscover.FQDN (Exemple : Pour une adresse de messagerie ahmed.malek@TUNIT.TN, Outlook envoi un HTTPS POST vers autodiscover.TUNIT.TN)
  • Si l’auto- configuration n’a pas été réalisée en utilisant la deuxième étape, le client Outlook envoi un http GET vers autodiscover.FQDN pour demander la redirection vers un autre serveur Autodiscover. Le client peut aussi essayer la résolution directe de l’enregistrement SRV _autodiscover._tcp.FQDN pour la redirection. Une fois redirigé, Outlook envoi un HTTPS POST vers le nouveau serveur Autodiscover.

Figure 4 : Figure représentative du processus de localisation d’un serveur Autodiscover en utilisant le système DNS
 
Utilisation d'IIS 7.5 pour la réalisation de la redirection HTTP de l'URL du serveur Autodiscover :
 
Utilisation d'IIS 7.5 pour la réalisation de la redirection HTTPS de l'URL du serveur Autodiscover :
 
Remarque 1 : Outlook supporte jusqu’à dix (10) redirections avec les différents types déjà cités.
 
Remarque 2 : Même si Outlook est apte de récupérer le fichier de configuration en utilisant le protocole HTTP, ce dernier refusera ce fichier vu qu’une connexion HTTPS est requise.
 

IV.   Outlook Providers et la fonctionnalité Autodiscover :

 
Par défaut, il existe trois « Outlook Providers » sous Exchange Server 2010.
 
Ces derniers sont :
  • EXCH : fait référence au protocole Exchange RPC utilisé en interne. Ce dernier inclus la configuration des ports et les URLs internes pour les services Exchanges Server activés.
  • EXPR : fait référence au protocole Exchange HTTP utilisé par Outlook Anywhere. Ce dernier inclus les URLs externes utilisés par les clients externes pour l’accès à Exchange Server.
  • WEB : Contient le meilleur URL pour Outlook Web App à utiliser. Ce dernier n’est pas utilisé.
La fonctionnalité Autodiscover est basée sur l’utilisation des « Outlook Providers » pour déterminer les URLs devant être utilisés par le client Outlook.
 
Le principe de l’interaction entre cette fonctionnalité et les « Outlook Providers » pour Outlook 2010 est représenté par le schéma suivant:
 

 
Figure 5 : Figure représentative de l’utilisation des « Outlook Providers » par la fonctionnalité Autodiscover pour Outlook 2010
 
  1. Outlook envoie une demande HTTPS POST qui inclut un fichier XML utilisant comme chemin le xmlns=http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006a
  2. Le serveur Autodiscover se rend compte qu’il s’agit d’un client MAPI vu la présence de « outlook » dans le chemin envoyé et redirige la requête vers les « Outlook Providers » EXCH et EXPR
  3. Les « Outlook Providers » se base sur le service « Services Discovery » pour obtenir les meilleurs URLs possible en se basant sur l’adresse mail de l’utilisateur Outlook
Remarque :
 
Au niveau de la réponse du client, le chemin envoyé est :
xmlns=http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a. La réponse inclus tous les URLs reçus par les « Outlook Providers » EXCH et EXPR.
 

The Autodiscover Service and Outlook Providers - how does this stuff work?:

 

When, if and how do you modify Outlook Providers?:

 

Des modifications peuvent être apportées sur le « Outlook Provider » EXPR. Ces dernières sont dans le but de :

  • Active ou désactiver l’authentification mutuelle pour les clients Outlook Anywhere
  • Spécifier le premier mode de connexion des clients Outlook (Exchange RPC ou Exchange HTTP)
  • Spécifier le nom principal  du certificat SSL requis pour la connexion des clients Outlook Anywhere
  • Spécifier le serveur d’accès aux clients devant être utilisé pour les clients Outlook Anywhere
Utilisation de Powershell  pour désactiver  l'authentification mutuelle MSSTD pour les clients Outlook Anywhere sur un serveur Exchange Server 2010 :
 
Utilisation de Powershell  pour obliger les clients Outlook à commencer par se connecter via RPC sur http dans Exchange Server 2010 :
 
Utilisation de Powershell  pour obliger les clients Outlook à commencer par se connecter via TCP/IP dans Exchange Server 2010 :
 
Utilisation de Powershell pour spécifier le nom principal du certificat SSL requis pour la connexion des clients Outlook Anywhere dans Exchange Server 2010 :
 
Utilisation d’ADSI pour déterminer le nom principal du certificat SSL requis pour la connexion des clients Outlook Anywhere dans Exchange Server 2010 :
 
Utilisation de Powershell pour spécifier le serveur d’accès aux clients devant être utilisé pour les clients Outlook Anywhere dans Exchange Server 2010 :
 

Utilisation d’ADSI pour déterminer le serveur d’accès aux clients devant être utilisé pour les clients Outlook Anywhere dans Exchange Server 2010 :

 

Remarques :

La spécification d’un serveur d’accès aux clients devant être utilisé pour les clients Outlook Anywhere force tout client de ce type appartenant à votre organisation Exchange d’utiliser dernier même s’il n’est pas le serveur qui assure l’accès le plus rapide au serveur de boîte aux lettres.
 
La désactivation de l’authentification mutuelle pour les clients Outlook Anywhere n’est pas recommandée pour des raisons de sécurité.
 
La spécification du nom principal du certificat SSL requis pour la connexion des clients Outlook Anywhere n’est recommandée que si vous utilisez un certificat de type « Wildcard ».
 
L’utilisation d’Exchange RPC comme premier mode de connexion des clients Outlook est recommandée si la majorité de vos clients se connectent à Outlook en interne.
 
L’utilisation d’Exchange HTTP comme premier mode de connexion des clients Outlook est recommandée si la majorité de vos clients se connectent à Outlook en externe.
 
La valeur de la durée (en heures) de validité des paramètres collectés à travers l'autodiscover peut être spécifiée pour tous les « Outlook Providers ».
 
Utilisation de Powershell pour spécifier la durée (en heures) de validité des paramètres collectés à travers l'autodiscover dans Exchange Server 2010 :
 

Utilisation d’ADSI pour déterminer la durée (en heures) de validité des paramètres collectés à travers l'autodiscover dans Exchange Server 2010 :

 

 V.   Actualisation de la configuration des profils Outlook en utilisant la fonctionnalité Autodiscover :

 
Il existe deux composants d’Outlook qui utilisent la fonctionnalité Autodiscover.
Ces derniers sont :
  • La couche Outlook : garde les informations nécessaires pour l’accès aux services OAB, OOF, UM et free / busy.
  • La couche MAPI : garde les informations nécessaires pour l’accès à la base de données de l’utilisateur.

La couche Outlook interroge un serveur Autodiscover et actualise sa configuration :

  • A chaque redémarrage d’Outlook
  • Périodiquement toutes les soixante minutes (TTL = 60 minutes)
  • S’il existe un problème au niveau de la communication avec l’un des serveurs utilisés pour les services déjà mentionnés
Remarque 1 :
 
Si après le redémarrage d’Outlook la couche Outlook n’est pas apte d’obtenir les informations de la configuration à partir des serveurs Autodiscover, cette couche essayera de recontacter ces serveurs toutes les cinq minutes.
 
Remarque 2 :
 
Après le redémarrage d’Outlook, la couche Outlook aura perdu sa configuration. De ce fait, si cette couche n’est pas apte de recevoir les informations Autodiscover, l’utilisateur du client Outlook ne sera plus apte d’utiliser les services OAB, OOF, UM et free / busy.
 

La couche MAPI interroge un serveur Autodiscover et actualise sa configuration :

  • Lors de la création d’un nouveau profil Outlook
  • Lors de la réparation d’un profil Outlook
  • Si Outlook n’est plus apte de se connecter au serveur au serveur MAPI
Remarque 3 :
 
Si Outlook est apte de se connecter à un serveur d’accès au client, ce dernier ne tentera pas d’actualiser la configuration de la couche MAPI.
 

What is the default refresh rate for Autodiscover:

VI.   L’interaction entre les fonctionnalités Auto-Mapping et Autodiscover :
 
« Auto-Mapping » est une nouvelle fonctionnalité qui a été introduite avec Microsoft Exchange Server 2010 Service Pack 1. L’objectif de cette dernière est d’ajouter automatiquement toutes les boîtes aux lettres auxquelles un utilisateur dispose d’un contrôle total au niveau d’Outlook. Cette fonctionnalité requiert l’utilisation d’Outlook 2010.
 
Remarque 1 :
 
La fonctionnalité « Auto-Mapping » requiert qu’un utilisateur dispose d’un contrôle total sur la boîte aux lettres à mapper.
 

Dans le service d’annuaire Active Directory, deux attributs sont utilisés pour faire référence à une boîte aux lettres qui doit être mappée pour un utilisateur sur Outlook 2010 :

  • « msExchDelegateListBL » : Cet attribut est peuplé au niveau des comptes d’utilisateurs des boîtes aux lettres. Il inclut la liste des utilisateurs pour lesquels cette boîte aux lettres doit être mappée automatiquement.
  • « msExchDelegateListLink » : Cet attribut est peuplé au niveau des comptes d’utilisateurs pour lesquels d’autres boîtes aux lettres doivent être mappées automatiquement. Il inclut la liste des boîtes aux lettres à mapper pour ces utilisateurs.
Remarque 2 :
 
Toute modification au niveau de la valeur de l’attribut « msExchDelegateListLink » sera répercutée sur les attributs « msExchDelegateListBL » des utilisateurs concernés.
 

Utilisation d’ADSI pour déterminer la liste des bases de données qui seront mappées automatiquement pour un utilisateur sur Exchange Server 2010 SP1 ou version ultérieure :

doc.asp?docid=1657&mcat=4&mrub=41&msrub=63

 
La fonctionnalité Autodiscover joue un rôle très important dans ce mapping. En effet, cette dernière examine la valeur de l’attribut « 
msExchDelegateListBL » de l’utilisateur pour extraire la liste des boîtes aux lettres qui doivent être mappées automatiquement. Une fois terminé, Autodiscover inclut cette liste dans le fichier XML de réponse à travers les  balises AlternativeMailbox.
 

Figure 6 : Figure représentative de l’utilisation des « Outlook Providers » par la fonctionnalité Autodiscover pour Outlook 2010
 
Outlook, ayant reçu ces informations à travers la découverte basée sur la fonctionnalité Autodiscover, mappe automatiquement les bases de données sur lesquelles l’utilisateur dispose d’un contrôle total.
 
Remarque 3 :
 
Avec Exchange Server 2010 Service Pack 1, les boîtes aux lettres sur lesquelles un utilisateur dispose d’un contrôle total sont mappées automatiquement et l’administrateur ne pouvait pas désactiver ce mapping. Avec Exchange Server 2010 Service Pack 2, Microsoft a introduit la possibilité de désactiver le « Auto-Mapping ».
 

Utilisation de Powershell pour l'activation de l'Auto-Mapping d'une boîte aux lettres pour un utilisateur dans Exchange Server 2010 SP2 :

doc.asp?docid=1655&mcat=4&mrub=41&msrub=73

 
Utilisation de Powershell pour la désactivation de l'Auto-Mapping d'une boîte aux lettres pour un utilisateur dans Exchange Server 2010 SP2
 :

doc.asp?docid=1656&mcat=4&mrub=41&msrub=73

 
Remarque 4 :
Une boîte aux lettres n’est pas mappée automatiquement si la permission de contrôle total est attribuée à un groupe et non directement à ces membres.  Pour faire le mappage pour les membres du groupe, il faut utiliser un script qui va attribuer la permission de contrôle total directement aux utilisateurs membres de ce dernier. Le lien ci-contre fournit un exemple de script pouvant être utilisé :

http://ibenna.wordpress.com/2011/09/12/automapping-to-a-group/

 

VII.   Journalisation des évènements Autodiscover :

 
Pour avoir plus d’informations sur le fonctionnement de la fonctionnalité Autodiscover, vous pouvez augmenter le niveau de journalisation des catégories suivantes :
  • MSExchange Autodiscover\Core
  • MSExchange Autodiscover\Provider
  • MSExchange Autodiscover\Web

Figure 6 : Figure représentative de l’interface de gestion des propriétés de journalisation du diagnostic
 

Modification du niveau de journalisation sur un serveur Exchange Server 2010 :

doc.asp?docid=1651&mcat=4&mrub=41&msrub=73
 
Pour voir les évènements enregistrés, utilisez le journal d’évènements Windows.