私は少しトリッキーな状況にあります。私はJavaScriptのPageMethod機能を使用しています。ここでは、宝石のように動作するPageMethodを呼び出しています。しかし、私は私の実際の現在のユーザー名ではありませんJavaScript PageMethodsは、HttpContextを呼び出すときに呼び出されます。現在の状態
HttpContext.Current.User.Identity.Name
の値「SYSTEM」を返すのHttpContextの状態にアクセスする際に問題が生じています。
セッションにHttpContext.Currentを保存したり、他のカスタムコンテナにコンテキストの状態を保存したりするようなカップルオプションがあることは知っていますが、期待通りに動作しないと仮定しています。ここで
は[System.Web.Services.WebMethod()]
public static void MyPageMethod()
{
// gives me "SYSTEM"
var user = HttpContext.Current.User.Identity.Name;
}
また、私はのOnLoadイベントで、ユーザー名にアクセスするには上記のコードを使用している場合、サーバーメソッドのシグネチャ私がここ
function MyFunction(){
PageMethod.MyPageMethod();
}
で働いているコードされていますページが正常に動作し、CurrentUserNameを返します。私は、ASP.NETのWebフォームで動作するように上記のコードを取得しようとしています
...だから使用せずにページの方法で現在の実際のユーザーにアクセスする方法があれば、私は疑問に思って
:)セッションの
ご協力いただければ幸いです。
NIK ...私はページの方法がどのように機能するかについての正しくない何かをしようとしていたと思うかなり読んだ後
ちょうどあなたが何の認証モードを使用している不思議?権限/偽装のためのweb.config内の他の設定 – gbs
私の質問を読む時間を取ってくれてありがとう...私たちはActive Directoryを介してWindowsベースの認証を使用しています – NiK
私は私のweb.configで認証モード= "Windows"で私のローカルiisのクイックテストを実行し、ユーザーを拒否= ? " mydomain/usernameを取得しました。私の設定とは違う何かがあります。 – gbs