Смена имени пользователя AD нарушает работу веб-сайта ASP.MVC 3 - PullRequest
1 голос
/ 06 марта 2012

У меня есть веб-сайт ASP.NET MVC 3, который использует проверку подлинности Windows, работающую под управлением IIS7.5. Этот веб-сайт также проверяет вручную группы в AD, используя GetRolesForUser метод пользовательского RoleProvider. В этом нет ничего особенного, и он отлично работает уже несколько месяцев.

Однако теперь у нас есть пользователь, у которого изменилось имя пользователя в Active Directory. У них все еще есть та же фактическая учетная запись AD, но для них теперь их имя входа отличается.

К сожалению, это сломало веб-сайт для этого пользователя. Я использую Elmah для регистрации ошибок, и я заметил, что REMOTE_USER использует имя старой учетной записи, а LOGON_USER использует имя новой учетной записи. Похоже, что параметр username метода GetRolesForUser получает имя старой учетной записи - поэтому я предполагаю, что он использует REMOTE_USER.

Должен ли я нацеливаться на веб-сервер или веб-сайт для исправления? Я читал, что LOGON_USER и REMOTE_USER отличаются, только если установлен фильтр аутентификации. Я не знаю ничего подобного на веб-сервере (хотя точно не знаю, где искать), но MVC3 как-то добавляет это?

1 Ответ

2 голосов
/ 06 марта 2012

Как правило, после того, как я отправил сообщение, мой Google-Fu заработал.

Похоже, это известная проблема (по замыслу) с локальным кэшем sid: http://support.microsoft.com/kb/946358

Разрешениепроследить за изменением реестра в статье (и отменить его снова?) или перезагрузить веб-сервер.Я читал, что IISRESET тоже может это исправить.

...