получение автообнаружения URL с адреса электронной почты Exchange - PullRequest
18 голосов
/ 04 мая 2010

Я начинаю с адреса для сервера Exchange 2007:

user@domain.exchangeserver.org

И я попытался отправить запрос на автообнаружение, как указано в MSDN .

Я попытался использовать общий адрес автообнаружения, описанный в TechNet White Paper .

Итак, используя curl на PHP, я отправил следующий запрос:

<Autodiscover 
 xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006">
   <Request>
     <EMailAddress>user@domain.exchangeserver.org</EMailAddress>
     <AcceptableResponseSchema>
       http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a
    </AcceptableResponseSchema>
   </Request>
 </Autodiscover>

по следующему URL:

https://domain.exchangeserver.org/autodiscover/autodiscover.xml

Но ответа не последовало, просто возможный таймаут.

Я тоже пробовал:

https://autodiscover.domain.exchangeserver.org/autodiscover/autodiscover.xml

С тем же результатом.

Теперь, поскольку моя более крупная цель - использовать автообнаружение с веб-службами Exchange, и поскольку все URL-адреса EWS обычно используют тот же поддомен, что и адрес Outlook Web Access, я подумал, что посмотрю, верно ли это для автообнаружения URL. Поскольку URL OWA:

OWA:  https://wmail.domain.exchangeserver.org

Я пытался:

https://wmail.domain.exchangeserver.org/autodiscover/autodiscover.xml

И, конечно же, я получил ожидаемый ответ.

Однако я знал только субдомен OWA, потому что это сервер, к которому у меня есть доступ, и который я использую для проверки всего. Я бы не знал это наверняка или не смог бы догадаться, если бы это было живое приложение, а пользователь вводил свою собственную электронную почту Exchange.

Я знаю, что настройки автообнаружения должны быть доступны без знания URL-адреса OWA, потому что я могу ввести:

user@domain.exchangeserver.org

в Apple Mail на Snow Leopard, и он находит все без проблем.

Так что вопрос ...

  1. Должно ли https://domain.exchangeserver.org/autodiscover/autodiscover.xml сработать, и я просто пропустил шаг при попытке подключиться к нему? Или,

  2. Есть ли какая-то хитрость (возможно, связанная с проверкой адреса электронной почты?), Которую Apple Mail и другие клиенты используют для разрешения адреса в поддомене OWA перед отправкой запроса автообнаружения?

Спасибо всем, кто знает или может сделать дикое предположение.

1 Ответ

13 голосов
/ 04 мая 2010

После еще большего удара головой о Google я нашел следующую очень полезную статью на MSDN:

http://msdn.microsoft.com/en-us/library/ee332364.aspx

В частности, раздел "Calling Autodiscover"

Я все еще пытаюсь понять, как сделать Active Directory Service Connection Point search через LDAP, но шаг 4, по крайней мере, для моего сервера, работал как чудо:

Приложение отправляет GET-запрос без аутентификации на http://autodiscover.contoso.com/autodiscover/autodiscover.xml. (обратите внимание, что это конечная точка без SSL).

Если запрос GET возвращает ответ перенаправления 302, он получает URL перенаправления из HTTP местоположения заголовок и проверяет его, как описано в разделе «Подтверждение Потенциально небезопасный URL перенаправления » далее в этой статье.

Конечно, запрос отправлен:

http://domain.exchangeserver.org/autodiscover/autodiscover.xml

отправил обратно URL-адрес перенаправления 302:

https://wmail.domain.exchangeserver.org/autodiscover/autodiscover.xml

Но в этой статье представлен ряд шагов, поэтому любой, кто хочет внедрить автообнаружение для клиента Exchange, должен попробовать 5 вещей, прежде чем сдаться.

...