
Глава
4.
Web-серверы
109
зультат, Web-серверы обычно накладывают ограничения на ресурсы процессора и
память, предоставляемые сценарию. Следует также иметь в виду, что администра-
тор Web-сайта может запретить использование сценариев или наложить ограниче-
ния на круг лиц, которым разрешается устанавливать новые сценарии. Использо-
вание сценариев также сопровождается проблемами, связанными с безопасностью.
Сценарий может выполнять многочисленные функции, неожидациые для разра-
ботчиков Web-сервера. Сценарий может осуществлять доступ к файлам на компь-
ютере сервера. Плохо написанный сценарий может изменить данные или вернуть
запросившему клиенту информацию, не подлежащую разглашению.
Сценарии, которые получают данные от пользователя, требуют дополнительных
предосторожностей, чтобы гарантировать, что пользователь не сможет через сцена-
рий выполнить несанкционированные действия. Рассмотрим пример сценария, ко-
торый дает возможность пользователю вводить произвольные команды для их вы-
полнения на компьютере сервера. Пользователь может с помощью такого сценария
удалить файлы на компьютере сервера или передать пользователю конфиденци-
альную, не предназначенную для него информацию (например, с помощью элек-
тронной почты). Подобных ситуаций можно избежать несколькими способами.
Во-первых, сценарий может быть написан таким образом, чтобы ограничить вводи-
мую пользователем информацию. Например, Web-страница может предоставлять
пользователю возможность выбора из ряда предопределенных действий или ввода
списка ключевых слов вместо команд для выполнения их на компьютере сервера.
Во-вторых, сценарий может осуществлять предварительную обработку пользова-
тельских данных, чтобы избежать выполнения операций, которые дают иесанкцио-
нировагп1ЫЙ доступ к программам или данным. В-третьих, администратор сайта
может ограничить доступ к самим сценариям. Например, сценариям может быть
запрещен доступ к файлам, содержащим важные данные (например, файлу паро-
лей),
и к определенным командам (например, отправка электронной почты или
удаление файлов). Администратор сайта может также принудить сценарий выпол-
няться с теми же правами доступа, которые имеет человек, написавший сценарий,
предотвращая тем самым доступ сценария к файлам, к которым не имеет доступа
автор сценария.
4.2,4. Создание и использование cookies
Cookies дают возможность сохранять информацию о пользователе в течение оп-
ределенного времени, о чем шла речь в главе 2 (раздел 2.6). Web-сайты используют
cookies для отслеживания пользователей и хранения информации о транзакциях,
которые выполняются с помощью многочисленных НТТР-взаимодействий. Coo-
kies обычно создаются, используются и модифицируются сценариями, вызываемы-
ми для динамического создания ответов, а не Web-сервером.
Web-сайт может адаптировать содержание передаваемое пользователю, обра-
тившемуся с запросом. Например, сайт электронной коммерции может возвратить
Web-страницу с персонифицированным приветствием, которое содержит имя
пользователя и рекомендации по возможным покупкам. Отслеживание пользовате-
лей дает возможность Web-сайту создавать профили отдельных пользователей и
накапливать статистику о поведении пользователей при обращениях к сайту, на-
пример, среднее время, проведенное пользователем на сайте. Однако HTTP-запрос
не предоставляет достаточной информации для идентификации пользователей.
Множество пользователей могут просматривать Web-содержимое с одного компь-
ютера или направлять свои запросы через один и тот же прокси-сервер. Кроме