HttpContext Пользовательское значение меняется само по себе? - PullRequest
1 голос
/ 30 марта 2010

Я работаю над приложением ASP.Net 2.0, и у меня возникла странная проблема, связанная с пользователем HttpContext. Кажется, он меняется сам по себе, когда я захожу на определенную страницу / каталог.

Все наши страницы наследуются от базовой страницы. В методе Page_Load () этой базовой страницы мы запускаем проверку авторизации, чтобы увидеть, сможет ли пользователь увидеть страницу, на которую он собирается.

Мы получаем пользователя для проверки с помощью этого кода:

GenericPrincipal objPrincipal = (GenericPrincipal)Context.User;

Когда я захожу в этот необычный каталог, значение пользователя - это не я, а другое имя пользователя, о котором я никогда не слышал. Это имя пользователя не авторизовано для просмотра этих страниц, поэтому авторизация не удалась.

Этот загадочный каталог не является виртуальным веб-сайтом, это просто обычный каталог на нашем веб-сайте, однако Я заметил, что у него есть собственный файл Web.Config. Я предполагаю, что это является причиной проблемы здесь.

У меня вопрос, как я могу исследовать это дальше, определяя, что меняет значение User, когда я захожу в этот каталог?

[edit] - когда я удаляю или переименовываю файл web.config в этом каталоге, значение User больше не изменяется. Однако, как уже упоминалось в комментарии ниже, в нем нет значения, поэтому я не уверен, как значение Principal.User может измениться просто из-за наличия файла? Должно быть, я чего-то упускаю, конечно.

...