ASP.Net Httpcontext.Current.User показывает последнего пользователя, который создал поток - PullRequest
1 голос
/ 20 января 2012

Очень странная проблема с ASP.Net и текущим пользователем.

Использование ASP.Net 4.0.

По какой-то причине HttpContext.Current.User.Identity.Name сообщает об идентификаторе пользователя как последнем, кто подключился к серверу. Другими словами, он как-то и по какой-то причине кеширует Идентичность.

Вот сценарий: Войдите в систему на компьютере 1 с моим собственным именем пользователя, и это хорошо. Войдите в систему на компьютере 2 с другим именем пользователя, и оно показывает нормально.

Обновите браузер на компьютере 1, и он показывает учетные данные компьютера 2 !!!

Я пробовал почти все! У меня был пользовательский поставщик ролей, который я отключил и перепробовал все возможные настройки. В настоящее время у меня есть две строки в моей веб-конфигурации, которые должны работать очень хорошо.

Я проверил следующее в IIS: Аноним отключен Windows включена Состояние сеанса отключено!

Чтобы проверить имя пользователя, я делаю это:

lblUserName.Text = HttpContext.Current.User.Identity.Name;

Есть идеи, что я делаю не так? Может ли это быть потому, что я использую NTLM, а не Kerberos?

Любая помощь будет высоко ценится

1 Ответ

1 голос
/ 20 января 2012

Holy Smokes, что за глупость! Я нашел ответ, разорвав web.config.

Оказалось, что кеширование было проблемой. В моем файле web.config было указано следующее:

<caching enabled="false">
  <profiles>
    <add duration="72:00:00" location="Client" extension=".aspx" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" />
    <add duration="72:00:00" location="Client" extension=".axd" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" />
    <add duration="72:00:00" location="Client" extension=".js" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" />
    <add duration="72:00:00" location="Client" extension=".css" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" />
    <add duration="72:00:00" location="Client" extension=".png" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" />
    <add duration="72:00:00" location="Client" extension=".jpg" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" />
    <add duration="72:00:00" location="Client" extension=".gif" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" />
  </profiles>
</caching>

Исправлено отключение кэширования! Что за странная проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...