У меня есть чистый Windows 2008 R2 (на виртуальной машине), и я установил IIS 7.5 с параметрами по умолчанию. Затем я скопировал на него веб-сайт (из Windows 7, IIS 7), и после небольшой настройки веб-сайт работает нормально.
В настоящее время веб-сайт использует и работает с анонимной аутентификацией.
Я вернулся к Windows Components / Sever Manager, Roles -> Security, поставил галочку и установил Windows Authentication.
Когда я проверяю свой сервер в IIS (верхний уровень над сайтами) -> Аутентификация, я вижу
Анонимная аутентификация (включена)
Олицетворение ASP.NET (отключено)
Проверка подлинности с помощью форм (отключено)
Проверка подлинности Windows (включена)
Когда я проверяю свой веб-сайт по умолчанию -> Проверка подлинности, я вижу то же, что и выше, но «Получение статуса» и диалоговое окно с сообщением об ошибке
There was an error while performing this operation.
Details:
Filename c:\inetpub\wwwroot\screwturnwiki\web.config
Line number: 96
Error: This configuration section cannot be used in this path. This happens
when the section is being locked at the parent level. Locking is either by default
(overriderModeDefault="Deny"), or set explicity by a location tag with overrideMode="Deny"
or the legacy allowOverride="False".
Я безуспешно пытался отредактировать web.config вручную. (Как использовать блокировку в конфигурации IIS7)
UN-установка Windows Authentication успешно возвращает мой сайт к работе с анонимной аутентификацией и позволяет мне включать / отключать эти три параметра.
К вашему сведению. Я использую ScrewTurnWiki с подключаемым модулем Active Directory. Все это отлично работает под Windows 7 IIS 7 локально (уже несколько месяцев)
Web.Config
<system.webServer>
(edit)
<handlers> ( deleted removes/adds ) </handlers>
<security>
<authentication>
96: <windowsAuthentication enabled="true" useKernelMode="true">
<extendedProtection tokenChecking="Allow" />
<providers>
<clear />
<add value="NTLM" />
<add value="Negotiate" />
</providers>
</windowsAuthentication>
</authentication>
</security>
Грр ... RTFM с моей стороны.
Ответ заключался в том, чтобы отредактировать
%windir%\system32\inetsrv\config\applicationHost.config
Файл и удалите overrideModeDefault="Deny"
из раздела безопасности.