7

ASP.NET MVC 4 Web サービスがあります。私の開発ボックスでは、IIS Express 7.5 を実行しているので、localhost:port を呼び出しています。Windows 認証を使用するように設定し、匿名をオフにしました。

クライアントで、設定した場合

HttpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;

できます。しかし、資格情報を別の Windows ドメイン アカウントに設定すると、

HttpWebRequest.Credentials = new NetworkCredential("lpuplett", "catsGoW00f", "ntdom"));

その後、401 Unauthorized が返されます。私は何か誤解していますか?これはうまくいくはずですか?

資格情報を CredentialCache オブジェクトに追加して、キャッシュを設定しようとしました。

4

1 に答える 1

5

リンクされた重複した質問のコメントから:

認証タイプを指定する必要があります。サーバーがクライアントに NTLM 認証を要求すると、ICredentials.GetCredential メソッドが authType = "NTLM" の WebClient.Credentials で呼び出されます。認証タイプが指定されていないため WebClient.Credential = new NetworkCredential(...) を使用した場合、クライアントは正しく応答できません。CredentialCache はすでにこの機能を実装しています。— ダリン・ディミトロフ

于 2012-12-10T18:24:46.713 に答える