0

asp.net が要求を処理するようにワイルドカード アプリケーション マップを設定すると (実行可能パスを に設定するC:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll) LOGON_USER、経由でページにアクセスすると空白になりますsite.com/directory/-site.com/directory/default.aspxは正しいLOGON_USER値を返します。

アプリケーション マップを削除せずにこれを修正するにはどうすればよいですか?

簡単なテスト:

<%# Request.ServerVariables["LOGON_USER"] %>

DOMAIN\UserNameアプリケーション マップが設定されていない場合は結果が返されますが、設定されている場合は空白の文字列になります。

編集:

このサイトは管理にフォーム認証を使用していますが、現在ログインしているユーザーに基づいて (および Active Directory を検索するために) LDAP クエリを実行する必要があります - 匿名アクセスがオフになり、Windows 統合認証がオンになります。

4

1 に答える 1

0

私はこれまで見たことがなく、ほとんどの場合ワイルドカード マップを使用していますが、文字列ベースの変数の代わりに Request.User (または Page の User ヘルパー プロパティ) を使用していない理由はありますか? それが役立つかどうかはわかりませんが、少なくともタイプミスに対しては安全です。

于 2009-11-25T12:29:25.470 に答える