Windows 2008 R2 サーバー上の IIS 7.5 で、Windows 認証を使用してユーザー ログインを読み取るための単純なクラシック ASP アプリケーションをセットアップしています。(アプリケーションは 1 つのファイルであり、次の行があります - response.write(Request.ServerVariables("LOGON_USER")) )
ただし、コード ファイル (アプリケーション ディレクトリ) に特定のユーザーまたは「すべてのユーザー」に読み取りと実行のアクセス許可が付与されていない限り、ユーザーのログイン情報を読み取ることはできません。「Everyone」またはエンド ユーザーの ID を削除すると、ログイン ポップアップが表示され、続いて 401 - Unauthorized エラーが表示されます。
IIS に次の設定を適用しました…</p>
アプリケーション プールの ID を「ApplicationPoolIdentity」に設定します。
Windows 認証を有効にし、他のすべての認証を無効にしました。
Windows 認証のプロバイダーで「NTLM」を一番上に移動しました。
CGI で Impersonate User を False に設定する
アプリケーション ディレクトリのセキュリティ プロパティに「IIS AppPool\DefaultAppPool」を追加しました。
Windows 認証を使用する IIS 7.5 Web アプリケーションで、コード ファイルへの読み取りアクセス権をエンド ユーザーまたは「全員」に付与する必要がある理由がわかりません。
この問題を解決するための見解を提案し、エンド ユーザーとフォルダを共有せずにこのアプリケーションを実行できるようにしてください。
前もって感謝します、
アショク