基本的にWebサービスであるアプリケーションがあります。これは、Web構成の偽装タグに特定のユーザー資格情報を使用してSQLデータベースに接続します。
私が知りたいのは、この Web サービスを呼び出しているユーザー名を取得できるかどうかです。
私のウェブ設定は次のようになります:
<identity impersonate="true" userName="db_user" password="db_pass" />
次の資格情報を使用して http 要求を作成しています。
request.Credentials = new NetworkCredential("request_user", "request_pass");
そして、Webサービスのwebmethod内で、次のコード行を使用してリクエストユーザーを取得しようとしていますが、それらはすべて、偽装ユーザーである同じユーザーを返します-(
System.Security.Principal.WindowsIdentity.GetCurrent().Name //returns db_user
System.Environment.UserName //returns db_user
HttpContext.Current.User.Identity.Name //returns db_user
私は明確ですか?誰かが私を助けてくれることを願っています、ありがとう!