1

以下のケースで困っています。

C# で記述された Web サービス (これは古代のルーン文字です。.NET 2.0、asmx ファイル) があります。サービスが呼び出されると、ユーザーは HttpContext.Current.User などでチェックされます。呼び出しは Active Directory アカウントで行う必要があります。これで現在のユーザーのアイデンティティを取得するのにまったく問題はありません。

この Web サービスはある時点で別の Web サービスを呼び出しますが、2 番目の Web サービスでは Current.User.Identity-object が空です!?

これはなぜですか、どうすれば修正できますか?

両方のサービスは、IIS 6 を使用する Server 2003 でホストされています。両方のサービスは、Windows 認証が有効になっている ApplicationPools で実行されています。

4

1 に答える 1

1

古代のルーンの説明が限られているのでわかりにくいですが、1 つ目のサービスは認証を要求するように設定されているのに対し、2 つ目のサービスはそうではないと思います。したがって、最初に確認することは、2 番目のサービスが匿名接続を許可しているかどうかであり、許可している場合はそれを無効にするとうまくいく可能性があります。

一般に、これは古い ASMX であっても、Web サービスを保護するための優れた方法ではありません。

于 2012-08-20T15:38:52.750 に答える