2016-04-19 11 views
3

問題は何ですか?現在のWindowsユーザー資格情報を使用してExchange Serverに接続するにはどうすればよいですか?

VS2013には、Exchange Server 2010 SP2、IIS 7.5、およびコンソールアプリケーションがあります。

だから我々は次のことを行っている:

TimeZoneInfo timeZone = TimeZoneInfo.Local; 
ExchangeService EWSservice = new ExchangeService(ExchangeVersion.Exchange2010_SP2, timeZone); 
//EWSservice.Url = new Uri("our url"); 
EWSservice.AutodiscoverUrl("[email protected]", RedirectionUrlValidationCallback); 

URLを定義するには、両方の方法が働いています。 資格情報を設定しようとしています:

EWSservice.Credentials = new WebCredentials("[email protected]", "mypass"); 

これも機能します。しかし、現在のWindowsユーザー資格情報を使用して接続したいと考えています。使用してクラッシュしていたいくつかのコードサンプル:

  • EWSservice.Credentials = new WebCredentials(CredentialCache.DefaultCredentials);

  • EWSservice.UseDefaultCredentials = true;

  • EWSservice.Credentials = (NetworkCredential)CredentialCache.DefaultCredentials;

は、このすべてが401エラーを返しました:不正な

また、私はこのようなapp.configをを編集した - しかし、それは動作しません。そして、

<authentication mode="Windows"> 
    </authentication> 
    <identity impersonate="false"/> 
    <!--Other stuff--> 
</authentication> 

、私は認証モードについて読むと、これを発見した: Windows User getting "access denied" from exchange server

管理者が持っています

EWSservice.TraceEnabled = true;

:このデリゲートオプションが設定されますが、接続がまだ機能していません...

今、私はこれを追加しました

と私はコンソールでExchangeの応答を取得:

HTTP/1.1 401 Unauthorized 
Content-Length: 0 
Date: Wed, 20 Apr 2016 07:59:01 GMT 
Set-Cookie: exchangecookie=bfab7cdda62a4bf8be5b43689199fcf6; expires=Thu, 20-Apr 
-2017 07:59:02 GMT; path=/; HttpOnly 
Server: Microsoft-IIS/7.5 
WWW-Authenticate: Basic realm="our-domain" 
X-Powered-By: ASP.NET 

任意のアイデア?

+0

だからアプリケーションが失敗したり、ASPでこれをやろうとしているコンソールです。ネット?あなたは、フィドラーでのリクエストを見て、認証ヘッダー(BasicやNTLMなど)が使用しようとしているものを見てみたいかもしれません。これは古いですが、EWS Managed APIではまだHttpwebrequestを使用しています。https://blogs.msdn.microsoft.com/buckh/2004/07/28/authentication-in-web-services-with-httpwebrequest/ –

+0

その発生コンソールアプリケーションで。 HttpWebRequestを使用すると401エラーも返される –

答えて

0

私はあなたのアプローチが可能であるとは思わないが、あなたは、この を見てみたいことがあり....

How to get the current user's Active Directory details in C#

+0

ADからどのような詳細情報を得ることができますか?ユーザーのメールは既に知られています –

+0

あなたの質問は:どのように私は間違っている現在のユーザーの資格情報を取得するには? 現在のユーザーメールを既にお持ちの場合は、間違った方法で問題に近づいていると思います。 他のアカウントhttps:// msdnを偽装する権限を持つ単一アカウントの資格情報が必要です。microsoft.com/en-us/library/office/dd633680(v=exchg.80).aspx これを行うと、ユーザー名とパスワードが1つしかなくても、他の人のメールボックスにアクセスすることができれば郵便物 – rojobo

関連する問題