从Exchange电子邮件地址获取自动发现URL

Ant*_*ony 18 exchange-server autodiscovery exchangewebservices

我从一个Exchange 2007服务器的地址开始:

user@domain.exchangeserver.org
Run Code Online (Sandbox Code Playgroud)

我尝试发送自动发现请求,如MSDN中所述.

我尝试使用TechNet白皮书中记录的通用自动发现地址.

因此,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>
Run Code Online (Sandbox Code Playgroud)

到以下网址:

https://domain.exchangeserver.org/autodiscover/autodiscover.xml
Run Code Online (Sandbox Code Playgroud)

但没有得到回应,只是最终超时.

我也尝试过:

https://autodiscover.domain.exchangeserver.org/autodiscover/autodiscover.xml
Run Code Online (Sandbox Code Playgroud)

结果相同.

现在,由于我的更大目标是使用自动发现和Exchange Web服务,并且由于所有EWS URL通常使用与Outlook Web Access地址相同的子域,我想我会看到自动发现URL是否也是如此.由于OWA URL是:

OWA:  https://wmail.domain.exchangeserver.org
Run Code Online (Sandbox Code Playgroud)

我试过了:

https://wmail.domain.exchangeserver.org/autodiscover/autodiscover.xml
Run Code Online (Sandbox Code Playgroud)

果然,我收到了预期的回应.

但是,我只知道OWA子域,因为它是我可以访问的服务器,而且我用来测试所有内容.如果这是一个实时应用程序并且用户输入了他们自己的Exchange电子邮件,我肯定不会知道它或能够猜测它.

我知道在不知道OWA URL的情况下必须可以使用自动发现设置,因为我可以输入:

user@domain.exchangeserver.org
Run Code Online (Sandbox Code Playgroud)

进入Snow Leopard上的Apple Mail,它可以毫无困难地找到所有东西.

所以问题是......

  1. 应该https://domain.exchangeserver.org/autodiscover/autodiscover.xml有用,我只是错过了尝试连接它的一步?要么,

  2. 是否有一些技巧(可能涉及ping电子邮件地址?)Apple Mail和其他客户端在发送自动发现请求之前用于将地址解析为OWA子域?

感谢任何知道或可以猜测的人.

Ant*_*ony 13

在对谷歌进行了多次敲击之后,我在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重定向响应,它将从Location HTTP标头获取重定向URL,并按照本文后面的"验证可能不安全的重定向URL"一节中的说明对其进行验证.

果然,请求发送到:

http://domain.exchangeserver.org/autodiscover/autodiscover.xml
Run Code Online (Sandbox Code Playgroud)

发送回302重定向网址:

https://wmail.domain.exchangeserver.org/autodiscover/autodiscover.xml
Run Code Online (Sandbox Code Playgroud)

但是本文给出了一系列步骤,因此任何想要为Exchange客户端实现自动发现的人在放弃之前都要尝试5件事.

  • 我不确定这是不是新手.交流和与之相关的各种服务令人头疼(应该是微软的口号).我知道管理员启用了自动发现,因此也可以禁用它,因此无法访问自动发现并不意味着Exchange服务器已关闭.但它当然可以.如果您知道服务器的OWA地址,请尝试进行此操作.如果它正常,服务器就可以了. (3认同)