ошибки "доступ запрещен" (HTTP 401), как показано на рис. 23.1, или более общее сообщение об ошибке, в зависимости от настроек элемента <customErrors>.

Рис. 23.1. Попытка обращения к запрещенной Web-странице

Правила авторизации

Правила авторизации определяются в элементе <authorization> файла web.config. Базовая структура выглядит следующим образом:

<authorization>
  <allow users="comma-separated list of users"
    roles="comma-separated list of roles"
    verbs="comma-separated list of verbs" />
  <deny users="comma-separated list of users"
    roles="comma-separated list of roles"
    verbs="comma-separated list of verbs" />
</authorization>

Другими словами, существует два типа правил: разрешить (allow) и запретить (deny). Вы можете сколько хотите добавлять тех и других правил. Каждое правило идентифицирует одного или более пользователей или ролей (групп пользователей). В дополнение вы можете использовать атрибут verbs, чтобы создавать правила, применимые только к специфичным типам HTTP-запросов (GET, POST, HEAD ИЛИ DEBUG).

Вы уже видели, в предыдущих главах, простейший пример того, как запретить доступ всем анонимным пользователям. Для необходимо определить правило <deny> следующего вида:

<authorization>
  <deny users="?" />
</authorization>

В данном случае знак вопроса (?) — шаблонный символ, представляющий анонимных пользователей. Это правило почти всегда используется в сценариях аутентификации, так как приводит к необходимости аутентифиции всех пользователей.

предыдущая    следующая страница    вначало главы    оглавление

926

Hosted by uCoz