ローカル Web サーバー (IIS、Windows 8) を使用してアプリケーションをテストしています。サイトには基本認証が必要です。資格情報を明示的に渡す限り、すべて正常に動作します。
request.Credentials = new NetworkCredential("User", "Password", "Domain");
request.PreAuthenticate = true;
しかし、統合セキュリティを使用したいので、最初の行を次のように変更してみました。
request.Credentials = CredentialCache.DefaultNetworkCredentials;
(DefaultCredentialsも試しました)
Fiddler でネットワーク トラフィックを確認したところ、2 番目のケースでは HTTP 要求が承認ヘッダーなしで送信されていることがわかりました。したがって、失敗しても驚くことではありません。しかし、なぜ?
アップデート。デフォルトの資格情報の概念を誤解していると思います。DefaultNetworkCredentials を使用して基本認証ヘッダーを生成することはできません。ユーザーとパスワードのペアである必要があります。したがって、この動作は仕様です。