web-dev-qa-db-ja.com

Exchangeの電子メールアドレスから自動検出URLを取得する

Exchange2007サーバーのアドレスから始めます。

[email protected]

そして、 [〜#〜] msdn [〜#〜] に記載されているように、自動検出要求を送信しようとしました。

TechNetホワイトペーパー に記載されている一般的な自動検出アドレスを使用しようとしました。

そこで、PHPでcurlを使用して、次のリクエストを送信しました。

<Autodiscover 
 xmlns="http://schemas.Microsoft.com/exchange/autodiscover/Outlook/requestschema/2006">
   <Request>
     <EMailAddress>[email protected]</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サービスで自動検出を使用することであり、すべてのEWSURLは通常OutlookWeb Accessアドレスと同じサブドメインを使用するため、自動検出URLにも同じことが当てはまるかどうかを確認したいと思いました。 。 OWAのURLは次のとおりです。

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

私は試した:

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

そして確かに、私は期待された応答を取り戻しました。

ただし、OWAサブドメインは私がアクセスできるサーバーであり、すべてをテストするために使用しているため、私はOWAサブドメインしか知りませんでした。これがライブアプリであり、ユーザーが自分のExchangeメールを入力していたかどうかは、はっきりとはわかりませんし、推測することもできません。

次のように入力できるため、OWAURLを知らなくても自動検出設定を使用できる必要があることを知っています。

[email protected]

into Apple Snow Leopardにメールを送信すると、問題なくすべてが見つかります。

だから問題は...

  1. https://domain.exchangeserver.org/autodiscover/autodiscover.xml動作しましたが、接続しようとしたときにステップを逃しましたか?または、

  2. Appleメールや他のクライアントが自動検出リクエストを送信する前にOWAサブドメインにアドレスを解決するために使用するトリック(おそらく電子メールアドレスへのpingを含む)はありますか?

知っているか、大げさな推測をすることができる人に感謝します。

18
Anthony

もう少しGoogleに頭をぶつけた後、MSDNで次のvery役立つ記事を見つけました。 :

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

具体的には、セクション"Calling Autodiscover"

LDAPを介してActive Directory Service Connection Point searchを実行する方法をまだ理解しようとしていますが、少なくとも私のサーバーでは、ステップ4は魅力のように機能しました。

アプリケーションは、認証されていないGET要求を http://autodiscover.contoso.com/autodiscover/autodiscover.xml に送信します。 (これは非SSLエンドポイントであることに注意してください)。

GETリクエストが302リダイレクト応答を返す場合、ロケーションHTTPヘッダーからリダイレクトURLを取得し、この記事で後述する「安全でない可能性のあるリダイレクトURLの検証」のセクションで説明されているように検証します。

案の定、リクエストは次の宛先に送信されます。

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

302リダイレクトURLを送り返しました:

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

ただし、この記事では一連の手順を説明しているため、Exchangeクライアントの自動検出を実装したい場合は、諦める前に5つのことを試してください。

13
Anthony