Мы обновили веб-приложение ASP.NET с IIS6 до интегрированного режима IIS7. В нашем приложении используются:
<identity impersonate="true"/>
и поэтому нам пришлось установить:
<validation validateIntegratedModeConfiguration="false" />
Это разумно? Мои инстинкты говорят, что нет, но при поиске в Google этой проблемы этот «обходной путь» предлагается на каждой посещаемой странице.
Неужели олицетворение больше не является хорошей практикой в IIS7, и стоит ли нам отказаться от него и предложить другое решение?
Если ваше приложение требует интегрированной аутентификации в BeginRequest и AuthenticateRequest, вам следует изменить пул приложений на классический режим.
Если вы не полагаетесь на интегрированную аутентификацию на этих двух этапах жизненного цикла страницы, вы можете продолжать игнорировать получаемую вами ошибку, установив для validateIntegratedModeConfiguration значение false.
У вас также есть возможность использовать appcmd перенести чтобы переместить приложение IIS6 в конфигурацию интегрированного режима IIS7.
Дополнительную информацию об этом поведении в IIS 7 можно найти здесь: http://www.iis.net/learn/application-frameworks/building-and-running-aspnet-applications/aspnet-integration-with-iis