Skip to content

The Autodiscover information | Part 04#36

Exchange Autodiscover is relating to “information” from three different perspectives:

  • Autodiscover is the tool that Exchange client uses for getting information about the Exchange infrastructure.
  • Autodiscover is the method in which Exchange CAS server provides information to his Exchange clients.
  • Autodiscover is the information itself.

Introduction

In the following article, I would like to zoom in on the aspect of the Exchange CAS server as the source for information and the Autodiscover process that enables the Exchange client to retrieve the required information.

In this article, we continue our “first glimpse” at the Exchange Autodiscover infrastructure.

We will review subjects such:

Q1: How to find the source of information?
Q2: What is the way that the client uses for locating the element that will provide them the required “Autodiscover information”?

Q3: What does the Autodiscover respondent include?
Q4: When the server responds with an answer (Autodiscover response), what is the content of this “answer.”

Q5: How the Autodiscover information is created?
What is happening behind the scenes on the Exchange CAS server which need to generate the Autodiscover response

Q6: What are the Exchange web based service?
What is the meaning of -“Exchange web services” and what are the available Exchange web services

What is the “Exchange information”?

Exchange client, need a lot of information about the Exchange infrastructure.

If we want to use a metaphor for describing the “role” of the Exchange CAS server as an information provider, we can relate to the Exchange CAS server as a “door to the information.”

In the following diagram, we can get a general concept about the “type of information” that provided by the Exchange server.

What does the Exchange information includes

1. Exchange web based services

  • The exchange provides many types of services to his client, most of this “Exchange service” consider as web services.
    Exchange client’s access the “Exchange web service”, by using a URL address that includes the FQDN of the host (Exchange CAS server) that provides the particular web service.
  • The information about the available Exchange web services is “passed” to the Exchange client as part of the Autodiscover process.
  • Each time that the Exchange client needs to use a particular Exchange web service, the client will use the information (the Autodiscover infrastructure) that was sent by the Exchange CAS server.
  • The Exchange CAS server is the information provider and, at the same time, the elements that provide different web services.

2. Configuration settings required for creating a new Outlook mail profile.

The “other type of information” that needed to Exchange client such as Outlook is the configuration setting’s details that required for creating a new Outlook mail profile.

The creation of a new Outlook mail profile and in particular Outlook Anywhere profile, require a lot of configuration settings.

Theoretically, these details can be fulfilled manually by the user, but, in a modern Exchange environment such as Exchange 2013 that uses a session ID, instead of using the Exchange CAS server name, the option of -“creating a new Outlook mail profile manually” is barely possible.

3. Other

Under the “other” section, we can add additional types of details and information that provided to the Exchange clients.
Technically, there is no limitation or restriction on the amount of data, which can include in the “information package,” that is provided by the Exchange server.

The Autodiscover information that is provided by the Exchange CAS server can include a new and updated type of information that not provided by prior versions of Exchange servers.

The “catch” is that as long that the client knows how to “read” and relate to the data that included in the Autodiscover response it’s O.K.

Autodiscover process | Client vs. server

If we want to encapsulate to one-sentence meaning of Exchange Autodiscover, we can say that: it’s all about the relationships between client and server.

In the current article, and in the following provisions of this series, we will use different terms for describing this “client and server relationships”:

The client side

We can relate to the client as: “client,” as a “Mail client” or, as an “Exchange client.” When we relate to the particular process of Autodiscover, we will refer to the Exchange client as –“Autodiscover client.”

The server side

As mentioned, the Exchange architecture includes five types of server roles, but 99% of the time when we mention the term: “server” or “Exchange server” the meaning is the Exchange server which holds the CAS (Client Access Server) role.
When we relate to the Autodiscover process, the terms that will be used for describing the “server-side side element” that provides the Autodiscover services could be:

  • Autodiscover Endpoint
  • Destination server
  • Destination host
  • Potential Autodiscover Endpoint
  • Final Autodiscover Endpoint.

The reason for using the term “Potential” is because, when the Autodiscover client addresses the “destination host”, he doesn’t know if this is the “right host” that can help him to complete the authentication process, provide the Autodiscover information and so on.

In other words -the Autodiscover client “hope” that the Autodiscover Endpoint that he tries to connect is the correct or the “last hope” in the Autodiscover process round trip.

The terms that we use for describing the elements that are involved in the Autodiscover process

Autodiscover query and Autodiscover response

The Autodiscover includes many aspects such as a protocol that is used by the client to locate their “source of information” (Exchange CAS server).

The other aspect is the part in which the Autodiscover reach the required Autodiscover Endpoint completes all the authentication and identification steps and gets to the point and which the client asks for the necessary information, and the server provides this information.

The request or the query that the Exchange client sends, described as Autodiscover request.

The “answer” of the server which includes the requested information described as Autodiscover response.

In my mind, the Exchange CAS server is some kind of superman that came to save the world in his hour of distress.

What does the Autodiscover response include?

The Autodiscover response that provided by the Exchange CAS server (the Autodiscover Endpoint) is dynamically generated and sent to the Exchange client (the Autodiscover client).

Autodiscover response output-01

The Autodiscover response that’s sent to the Autodiscover client includes two main parts:

1. Configuration settings\instructions for Outlook + Outlook Anywhere mail profile

The task of creating a new Outlook mail profile can be considered as a complicated task because the Outlook mail profile such as Outlook Anywhere mail profile, includes many different parameters that relate to the protocol type, the authentication protocol, the method to the server identification and the name of the required Exchange CAS server.

In case that the Exchange infrastructure based on Exchange 2013, the task of “getting the name of the Exchange CAS server” become even more complicated. In an Exchange 2013 environment, the mail client doesn’t use the Exchange CAS server name but instead, use a session ID that is sent by the Exchange CAS server.

Autodiscover response output-02

2.Information about Exchange services

The other “type of information” that included in the server Autodiscover responds is information about each of the available Exchange web services.

The information includes the service name, the name of the Exchange server which provides the service, and the URL that the Exchange client will need to use in case he wanted to access a particular service.

How does the Autodiscover information is created?

The Autodiscover information that is provided by Exchange server considers as a dynamic content that is “regenerated dynamically,” each time that an Exchange client asks for the Autodiscover information.

The Autodiscover response is dynamically generated by the Exchange CAS server

The reason for the “dynamic nature” of the data is because Exchange infrastructure and, especially Office 365 and Exchange Online infrastructure could consider as very dynamic.
The meaning of – “dynamic” is that in each mint or hour, there could be changes in the Exchange infrastructure such as – Exchange CAS server\s that are not available for any more vs. new Exchange CAS server\s.
Other examples could be changes or updates of Exchange CAS server\s that provide a particular web service.

The Autodiscover response format

The “answer” (the Autodiscover responds) that the Exchange CAS server provides is implemented as data in XML format.

The Autodiscover process based on a method, on which the Autodiscover client, request from the Exchange CAS server a file named – autodiscover.xml or autodiscover.svc

Apparently, we can think that autodiscover.xml is a static file that is stored in the Autodiscover folder on the Exchange CAS server but in reality, there is no such file.

The Autodiscover response that is sent as an “answer” (the request for the autodiscover.xml file) is a dynamic content that created on a real-time (based on the type of the mail client, the current Exchange infrastructure information and so on).

Autodiscover infrastructure | Recap

After we have to review the basic components of Autodiscover, let’s recap some of the concepts of Autodiscover infrastructure.

  • The “element” the described as the “source of information” is the Exchange CAS server. The primary purpose of the Autodiscover process is to enable the Exchange clients, to find the “right Exchange CAS server” that will be able to provide them the required Autodiscover information.
  • When we describe a subject that refers to the Exchange Autodiscover infrastructure, we relate to the Exchange client as a – Autodiscover client and relate to the Exchange CAS server as Autodiscover Endpoint.
  • The Autodiscover Endpoint (the Exchange CAS server) provides to the Autodiscover clients the information using an XML file named: autodiscover.xml
  • The autodiscover.xml includes information that needed for Exchange client such as Outlook, for creating a new mail profile and additional information all the available Exchange services that exist in the Exchange forest\organization.
  • Exchange services are web-based services and for this reason, the information about Exchange services is implemented by providing the URL of the Exchange Online services.

Autodiscover – client vs. server perspective

Autodiscover environment - The Autodiscover The Autodiscover Endpoint and other Exchange servers

The Autodiscover infrastructure is built from two parts: the client side and the server side.

The Autodiscover service on the “client side” enables to the Exchange client to perform tasks such as:

  • Decide about the preferred Autodiscover method.
  • In an Active Directory environment – create a Query the local Active Directory (using the LDAP protocol) and ask for a list of Autodiscover Endpoint (available Exchange CAS server\s).
  • In a non-Active Directory environment – communicate the Autodiscover Endpoint using HTTPS and HTTP protocol.
  • Get the server certificate of the Autodiscover Endpoint and provide the user credentials to the Autodiscover Endpoint.
  • Get the autodiscover.xml and use the information included in the file for creating a new Outlook mail profile or access the different Exchange services.

The Autodiscover service on the “server side,” is responsible for:

  • “Listen” and registered updates in changes in the Exchange environment.
  • Accept requests from Autodiscover client, provide them the public server certificate, get the user credentials.
  • Generate the autodiscover.xml file and provide the file to the Autodiscover client.
Autodiscover division of labor - Client side versus server side

The variation of the Outlook mail client

The Autodiscover response of the Exchange CAS server is based on a dynamic process, in which the Exchange CAS server recognizes the version of the Outlook client and, based on the specific Outlook version, generate a custom Autodiscover responded.

For example, Exchange server will create a different “answer” (XML response) for Outlook client version 2007 vs. Outlook client version 2013.

Autodiscover response - Different information for different Outlook client
o365info Team

o365info Team

This article was written by our team of experienced IT architects, consultants, and engineers.

This Post Has One Comment

Leave a Reply

Your email address will not be published. Required fields are marked *