Опубликован: 16.10.2006 | Доступ: свободный | Студентов: 2196 / 318 | Оценка: 4.44 / 4.23 | Длительность: 26:41:00
Лекция 11:

Безопасность активного содержимого

Структура папок для активного содержимого

В "Учетные записи, аутентификация и политика безопасности" говорилось о настройке разрешений Windows NTFS для веб-сайтов, папок и отдельных файлов для контроля доступа пользователей к веб-содержимому. Вместо установки разрешений на каждый файл легче и безопаснее создать папки для файлов определенных типов, например, для статического содержимого или сценариев. Хорошо продуманная структура каталогов веб-сайта упрощает управление разрешениями веб-содержимого, так как они устанавливаются на уровне папки. Для стандартного веб-сайта создайте следующие папки (см. "Подготовка и укрепление веб-сервера" ).

Папка Содержимое Типы файлов Путь
static Статическое содержимое, сценарии клиентской части .htm, .html, .js D:\my_website\static
include Файлы вставок .inc D:\my_website\include
content Файлы сценариев .asp D:\my_website\content
live Исполняемые файлы .exe, .dll, .cgi, .pl D:\my_website\live
images Файлы изображений .gif, .jpg D:\my_website\images

Такая структура сайта не обязательно является образцом для веб-дизайнеров, однако с точки зрения безопасности мы рекомендуем именно этот подход.

Важно. На разрабатываемом сервере используйте неинформативные имена папок со сценариями и исполняемыми файлами.

Разрешения файлов сценариев

После создания папок для веб-содержимого установите разрешения для каждой папки. Ниже приведены рекомендуемые настройки разрешений NTFS для структуры папок:

Папка Доступ гостевой учетной записи интернета (IUSR_имя-компьютера) Доступ администраторов Доступ системы
static Чтение Полный Полный
include Чтение Полный Полный
content Чтение Полный Полный
live Нет Полный Полный
images Чтение Полный Полный

Параметры приложения

Для разрешения выполнения сценариев на сервере нужно настроить параметры приложения IIS на главном уровне, уровне сайта или уровне виртуального каталога. Приложением IIS является любой файл (набор файлов), реализующий некоторую функцию и выполняющийся внутри определенных папок веб-сайта, используя границы папки для определения области действия приложения. Каждый файл или папка, находящиеся в "стартовой" папке веб-сайта, являются частью приложения, пока не будет найдена другая стартовая папка. С одним веб-сайтом можно связать несколько приложений. Приложение распределяет информацию среди своих файлов. Например, приложения ASP распространяют информацию о контексте, состоянии сеанса и настройке переменных среди страниц приложения.

Стартовые точки приложения

В консоли Internet Services Manager (Диспетчер служб интернета) значок коробки (см. рис. 11.1) означает стартовую точку приложения с подкаталогами, являющимися частью приложения.

Веб-сайт по умолчанию, созданный при установке IIS, представляет собой стартовую точку приложения или корень приложения (см. рис. 11.2). Используйте Internet Services Manager (Диспетчер служб интернета) для назначения каталога стартовой точке приложения. Для этого откройте окно главных свойств, веб-свойств или свойств виртуального каталога щелчком правой кнопкой мыши на соответствующем объекте в ISM, затем выберите пункт Properties во всплывающем меню, затем – вкладку Home Directory (Домашний каталог). IIS поддерживает приложения ASP, ISAPI, CGI, IDC (Internet Database Connector) и SSI.

Приложение evaluator является стартовой точкой веб-сайта

увеличить изображение
Рис. 11.1. Приложение evaluator является стартовой точкой веб-сайта
Веб-сайт по умолчанию является стартовой точкой приложения

Рис. 11.2. Веб-сайт по умолчанию является стартовой точкой приложения
Разрешения на выполнение

Если сайт состоит только из статического содержимого, убедитесь в том, что в ниспадающем меню Execute Permissions (Разрешения на выполнение) выбран параметр None (Нет) в окне Default Web Site Properties (Свойства веб-узла по умолчанию). Для разрешения выполнения связанного со сценариями приложения (например, ASP) выберите параметр Scripts Only (Только сценарии). Не выбирайте опцию Scripts And Executables (Сценарии и исполняемые файлы), если на сервере не нужно выполнять исполняемые файлы.

Существует разница между разрешениями веб-сервера и разрешениями NTFS. Разрешения веб-сервера применимы ко всем пользователям, осуществляющим доступ к сайту.

Разрешения NTFS применяются только к определенному пользователю или группе пользователей с корректными учетными записями Windows, они определяют доступ к физическим каталогам на сервере; веб-разрешения управляют доступом к виртуальным каталогам на веб-сайте. Они применяются ко всем пользователям независимо от их прав доступа. Например, установка разрешения Read (Чтение) на виртуальный каталог позволяет его просматривать, если разрешения NTFS не налагают ограничения на этот просмотр.

По умолчанию учетная запись анонимного пользователя (IUSR_имя-компьютера) наделяется разрешениями NTFS для папок, из которых состоит веб-сайт. Если веб-разрешения и разрешения NTFS для каталога или файла отличаются, то используются параметры с большей степенью ограничения.

Безопасность приложения

IIS предоставляет три возможных процесса для выполнения приложения.

  • Процесс, используемый веб-службами (Inetinfo.exe).
  • Объединенный процесс, являющийся отдельным вхождением DLLHost.exe.
  • Процесс, отдельный от веб-служб (DLLHost.exe).

Они обеспечивают различные уровни защиты. При возникновении ошибки в приложении процесс, в котором оно выполняется, перестает отвечать на запросы. По умолчанию inetinfo.exe выполняется в своем собственном процессе, а другие приложения – в одном и том же объединенном процессе. Необходимо найти оптимальное соотношение между производительностью и уровнем защиты приложения. Приложения, выполняющиеся в веб-службах, обрабатывают результат с большей производительностью, но и с большей вероятностью того, что неправильно функционирующее приложение сделает недоступными веб-службы. Следовательно, inetinfo.exe выполняется в собственном процессе, жизненно важные приложения – в своих процессах (высокий уровень безопасности), остальные приложения – в объединенном процессе (средний уровень безопасности).