0

非常に基本的なものが欠けているに違いありません。これがシナリオです

次の設定の ASP.NET 2.0 WebService (Server 2003) があります。

  • SSL
  • 統合されたセキュリティ
  • アノム。アクセス無効
  • NETWORK SERVICE で実行中
  • 公開 (つまり、公共のインターネットからアクセスできる)
  • サービスは、アプリケーションのユーザー名/パスワードを使用してデータベースからデータを返し、別の Web サービスを呼び出しません
  • 私もそれを切り替えようとしましたが、サービスに偽装は設定されていません。

LAN から切断されているが、エア カードを使用しているクライアント マシン (同じドメイン) があります。ユーザーは、AD ユーザー名/パスワード/ドメインを使用してラップトップにサインインします。

プロキシ レベルのコードでは、service.PreAuthenticate= true を使用しています。また、 と の両方DefaultCredentialsを使用DefaultNetworkCredentialsして同じ結果を試しました。

  1. .NET Windows クライアントは VPN で動作します
  2. .NET Windows クライアントが 401: Unauthorized WITHOUT VPN を取得します (注: 内部例外は返されません)
  3. IE は VPN の有無にかかわらず動作します。

私の仮定 (間違っている可能性があります) は、DefaultNetworkCredentials をプロキシ クラスに渡すと、認証のためにドメイン資格情報が渡されるというものでした。IE は明らかに、これを機能させるためにいくつかの魔法を行っています。

私は何が欠けていますか?

4

1 に答える 1

0

Firefox、Safari などを使用している場合、IE はデフォルトで NTLM を使用します。ドメイン サーバーを指定する必要があります。

これは、Web アプリでしばらく前に私に起こりました。

http://www.nateirwin.net/2007/01/19/enabling-ntlm-authentication-in-firefox-and-internet-explorer/

于 2010-03-08T20:40:36.923 に答える