3

Exchange Webサービスに接続し、現在のユーザーの受信ボックスアイテムを取得するWebページを作成します。認証を統合する必要があります。誰にもログインしてほしくない。

Windows認証を実行するようにIISを構成し、web.configで以下のパラメーターを設定します。

これで機能しましたが、ホストされているサーバーでWebサイトが呼び出された場合に限ります。別のワークステーションで同じ正確なURLを呼び出すと、(401)Unauthorizedになります。

ページがホストサーバーで実行されたときに交換に対して正しく認証される場合、同じページがクライアントワークステーションから呼び出されたときに同じことが機能しないのはなぜですか?Windows /ドメインログオンのユーザーIDは、どちらの場合も同じです。以下は、コードがExchangeに対して認証する方法です。

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.Url = new Uri("https://hostname/EWS/Exchange.asmx");
service.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;

誰かがここで犯人が何であるかについての考えを持っていますか?ありがとう!

4

2 に答える 2

0

(401) Unauthorized エラーは、ユーザー名とパスワードが間違っているため、ログインできないことを意味します。あなたはこのように試すべきです

        ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
        service.Credentials = new NetworkCredential(username, password);
        service.TraceEnabled = true;


        service.Url = new Uri("https://hostname/EWS/Exchange.asmx");
        ExportMIMEEmail(service, count); //call to export mails;

上記のコードは私のために働いています

于 2014-04-22T17:57:38.187 に答える
0

使用してみてください:

service.Credentials = new WebCredentials("user", "passwordd", "domain");

それはうまくいくはずです。

于 2012-11-29T20:24:18.550 に答える