В корне моей папки администратора в моем файле web.config есть следующее:
<system.webServer>
<security>
<authorization>
<remove users="*" roles="" verbs="" />
<add accessType="Allow" users="" roles="Admin" />
</authorization>
</security>
</system.webServer>
Это почти дословно из документации IIS , но я изменил роль на «Администратор» вместо «Администраторы», потому что это роль в моем приложении.
Я убедился, что модуль ASP.NET UrlAuthorization не работает через <remove name="UrlAuthorization" />
в элементе modules
моего корневого web.config. Я только что установил IIS7 UrlAuthorization, поэтому я знаю, что он работает.
Проблема в том, что, хотя я явно разрешаю роль администратора и проверил, что мой администратор вошел в систему, администратор получает несанкционированную ошибку. Что я недопонимаю?
Обратите внимание, что с тех пор, как я начал писать эти вопросы, я решил эту проблему, явно перечислив каждую запрещенную роль и удалив remove users="*"
, но я не знаю, почему она работала.