Можно использовать дополнительный шаблонный символ — звездочку (*), которая представляет всех пользователей. Например, следующий раздел <authorization> открывает доступ аутентифицированным и анонимным пользователям:

<authorization>
  <allow users="*" />
</authorization>

Такое правило требуется редко, потому что, оно уже присутствует в файле machine.config. После того как среда ASP.NET применит все правила из файла web.config, она применяет правила из machine.config. В результате любой пользователь, кому явно закрыт доступ, автоматически его получает.

Теперь посмотрим, что случится, если добавить более, одного правила в раздел аутентификации:

<authorizatiоn>
  <allow users="*" />
  <deny users="?" />
</authorization>

При оценке правил ASP.NET сканирует список сверху вниз. Как только он обнаружит применимое правило, то прекращает поиск. Поэтому в предыдущем случае он определит, что правило <allow users="*" /> применимо к текущему запросу и не станет принимать во внимание вторую строку. Это значит, что это правило разрешит доступ всем пользователям. Однако, если две строки поменять местами, то доступ будет закрыт анонимным пользователям (согласно правилу в первой строке) и разрешен всем остальным (согласно второй строке).

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

Когда вы добавляете правила авторизации в файл web.config в корневом каталоге Web-приложения, эти правила автоматически применяются ко всем Web-ресурсам, которые являются частью приложения. Если вы запретили вход анонимным пользователям, ASP.NET проверит метод аутентификации. Если выбрана аутентификация с помощью форм, ASP.NET перенаправит пользователя на страницу регистрации. Если же вы используете Windows-аутентификацию, IIS запросит удостоверения пользователя от клиентского браузера, что может привести к отображению стандартноого диалогового окно входа (в зависимости от включенного протокола).

В следующих разделах вы научитесь более тонкой настройке правил авторизации, чтобы более точно определять для них область действия.

Конфигурирование доступа для определенных пользователей

Правила <allow> и <deny> не обязательно требуют использования шаблонных символов звездочки или вопросительного знака. Вместо этого они могут конкретно идентифицировать имя пользователя или список имен пользователей, разделенный запятыми. Например, следующее правило авторизации специально ограничивает доступ для трех пользователей. Эти пользователи не смогут обратиться к страницам, находящимся в данном каталоге. Все остальные аутентифицированные пользователи смогут обращаться к этим страницам.

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

927

Hosted by uCoz