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

18

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

user@domain.exchangeserver.org

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

我尝试使用文档在TechNet White Paper中提供的通用自动发现地址。

因此,我使用 PHP 中的 curl 发送了以下请求:

<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 Web Services进行Autodiscover,而且由于所有EWS URL通常使用与Outlook Web Access地址相同的子域,我想看看自动发现URLS是否也是如此。由于OWA URL为:

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

我尝试了:

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

结果如预期一样返回了。

但是,我只知道 OWA 子域名,因为这个服务器是我可以访问并用于测试的服务器。如果这是一个实际应用程序,并且用户正在输入他们自己的 Exchange 电子邮件,我就不会确切知道它或能够猜测它。

我知道自动发现设置必须可用,而不需要知道 OWA URL,因为我可以输入:

user@domain.exchangeserver.org

我将电子邮件设置添加到Snow Leopard上的Apple Mail,它可以轻松找到所有东西。

所以问题是...

  1. https://domain.exchangeserver.org/autodiscover/autodiscover.xml 应该可以工作,我只是在尝试连接时错过了一步吗?还是,

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

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

1个回答

13

在反复查询了Google之后,我找到了下面这篇MSDN文章,非常有帮助:“Calling Autodiscover”

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

尤其是第四步,对于我的服务器来说,它非常有效:

应用程序向http://autodiscover.contoso.com/autodiscover/autodiscover.xml发送未经身份验证的GET请求(请注意,这是一个非SSL终结点)。

如果GET请求返回302重定向响应,则从Location HTTP标头获取重定向URL,并按照本文中稍后描述的“验证潜在不安全的重定向URL”部分进行验证。

果然,向以下地址发送的请求:

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

返回了一个302重定向的URL:

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

但是这篇文章提供了一系列步骤,因此任何想要为Exchange客户端实现自动发现的人在放弃之前有5件事情可以尝试。


我有一个新手问题。如果自动发现服务出现故障,那么这是否意味着无法从交换服务器访问数据? - Kiran Ruth R
3
我不确定那是新手还是不是。Exchange及其相关服务会让人头痛不已(这应该是微软的口号)。我知道管理员可以启用自动发现并因此也可以禁用它,所以无法访问自动发现并不意味着Exchange服务器已经宕机。但当然有可能是的。如果你知道服务器的OWA地址,请尝试访问它。如果它能工作,那么服务器就正常。 - Anthony
该链接现在显示为:“该文档已归档,此处的信息可能已过时”。 - Gabe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接