ВУЗ:
Составители:
Рубрика:
197
Если используется один web-сервер, требуется обеспечить оп-
тимальную производительность обработки состояния сеанса и число
параллельных сеансов невелико, храните состояние внутри процесса.
Однако если воссоздание данных сеанса чрезвычайно ресурсоемко и
требуется обеспечить длительное хранение данных в случае перезапус-
ка ASP.Net, используйте сервис состояния сеанса, выполняющийся на
локальном web-сервере. Для сценариев с использованием множества
серверов (web-фермы), где требуется централизованное хранение дан-
ных сеансов серверов, используйте хранилище состояния SQL Server.
Если данные состояния хранятся на отдельном сервере, защи-
тите канал связи для передачи состояния сеанса с помощью таких тех-
ник, как SSL или IPSec.
Для снижения затрат на сериализацию отдавайте предпочте-
ние базовым типам при хранении данных сеансов.
Проверка введенных данных (валидация)
Эффективный способ проверки данных вводимых пользователями
(валидации) имеет большое значение с точки зрения обеспечения безо-
пасности и надежности приложения. При несоответствующей или не-
достаточно полной валидации приложение может оказаться уязвимым к
таким угрозам безопасности, как межсайтовые атаки внедрением сцена-
риев (cross-site scripting, XSS), атаки типа внедрение SQL-кода, пере-
полнение буфера и другие типы атак посредством входных данных. При
проектировании стратегии валидации руководствуйтесь следующими
рекомендациями:
Проверяйте все данные, пересекающие границы доверия при-
ложения. Исходите из предположения, что все управляемые клиентом
данные являются злонамеренными и подлежат валидации.
Стратегия валидации должна обеспечивать ограничение, от-
клонение и очистку злонамеренного ввода. Проводите проверку длины,
диапазона, формата и типа вводимых данных.
Используйте проверку на стороне клиента для оптимизации
взаимодействия с пользователем и сокращения числа обращений к сети,
но для обеспечения безопасности всегда выполняйте проверку на серве-
ре.
Изучите решения, шаблоны проектирования и библиотеки
сторонних производителей, которые помогут реализовать централизо-
ванное управление и повторное использование правил и кода валида-
ции.