lnternet-безопасность. Информационный сервер Internet: Internet Information Server (IIS).
Для ограничения доступа на ваш компьютер с некоторых IР-адресов можно использовать систему защиты протокола Internet DPSec (Internet Protocol Security). Это делается с помощью дополнительного модуля IP Security Policy Management (управление политикой защиты протокола Internet), присоединенного к консоли ММС. Конечно, еще должны быть известны IP-адреса клиентов. Преимущество здесь в том, что не нужно трогать клиентские приложения, код ASP.NET и код Web-служб. Впрочем, все это не подходит для общедоступных Web – узлов или Web-служб, где не известно, кто является вашим потенциальным клиентом.
Хотя в этой главе основное внимание уделено безопасности .NET, но важно кое-что знать и о защите информационного сервера Internet (Internet Information Server, IIS). Поскольку информационный сервер Internet (IIS) используется как Web-службами, так и ASP.NET, то значения параметров информационного сервера Internet (IIS) могут влиять на безопасность .NET.
В предыдущих главах, где рассказывалось об ASP.NET и Web-службах, для анонимного доступа применялись значения по умолчанию. При анонимном доступе не нужно указывать имя пользователя и пароль, чтобы получить доступ к учетной записи. Такой доступ позволяет работать под учетной записью пользователя, определенной по умолчанию. Анонимный доступ полезен для общедоступных Web-узлов и Web-служб, в которых имеется своя система опознавания путем запроса имени пользователя и пароля или некоторыми другими средствами. В этом случае можно выполнять опознавание с помощью форм ASP.NET. Создайте формы, предназначенные для получения имени пользователя и пароля, а затем сверяйте полученные значения с теми, что находятся в файле конфигурации или в базе данных.
Информационный сервер Internet (IIS) поддерживает основные схемы опознавания, предусмотренные в протоколе передачи гипертекстовых файлов (HTTP). Впрочем, для этого он должен быть соответствующим образом настроен. Схемы опознавания перечислены в табл. 13.1. В каждом из этих сценариев информационный сервер Internet (IIS) проверяет, соответствуют ли имеющейся учетной записи те данные, которые представил пользователь. Каждый раз, когда нужно зашифровать канал HTTP-связи, применяется протокол защищенных сокетов (Secure Sockets Layer, SSL). Использование протокола защищенных сокетов SSL приводит к ухудшению производительности. О протоколе защищенных сокетов SSL в данной главе не рассказывается.
Кроме того, вам еще придется делать авторизацию, то есть настраивать доступ этих учетных записей пользователей к необходимым файлам (графике, файлам с хранящимися данными и т.д.) и другим ресурсам (например, базам данных). Что же касается общедоступных Web-узлов и Web-служб, то здесь такой подход бесполезен, потому что у пользователей не будет учетных записей.
Компания Microsoft предложила схему опознавания, которая называется Passport (Паспорт). И хотя в серверной части системы ASP.NET эта схема поддерживается с помощью класса System::Web::Security::Passportldentity,но в момент написания этих слов еще не было инструментов разработки, способных работать с клиентской частью схемы Passport (Паспорт). Эта схема позволяет избежать трудностей, связанных с указанием конкретных учетных записей или конкретных машин. О схеме Passport (Паспорт) в данной главе не рассказывается.
Таблица 13.1. Схемы опознавания.
Схема | Вид опознавания |
---|---|
Базовая (basic) | В действительности пользовательская информация и пароль передаются как простой текст. Это стандартная схема опознавания, предусмотренная в протоколе передачи гипертекстовых файлов (HTTP); безопасной она не является |
Базовая поверх протокола защищенных сокетов SSL (basic over SSL) | Хотя опознавание является базовым, но канал связи закодирован, так что имя пользователя и пароль защищены |
Профильная (Смешанная) (digest) | Использует безопасное хэширование для передачи имени пользователя и пароля. Это не совсем безопасный метод, потому что хэш-коды хранятся на сервере и являются обратимыми3. Была введена в протоколе передачи гипертекстовых файлов HTTP 1.1 в качестве базового опознавания |
Интегрированная защита Windows (Windows Integrated Security) | В традиционной системе безопасности Windows используются протоколы NTLM и Kerberos (Цербер). Информационный сервер Internet (US) выполняет опознавание, если мандат совпадает с учетной записью пользователя. Нельзя использовать в модулях доступа (proxies) и брандмауэрах. NTLM – это унаследованный Windows протокол безопасности |
Сертификаты поверх протокола защищенных сокетов SSL (certificates over SSL) | Клиент получает сертификат, который соответствует учетной записи пользователя |
Безопасная спецификация для SOAP разрабатывается W3C. С помощью сообщений SOAP вы можете создавать свою собственную систему опознавания. Так как XML-код передается в виде текста, то необходимо использовать протокол защищенных сокетов SSL для шифрования сообщений (особенно при использовании таких, например, дескрипторов, как <user> (пользователь) и <password> (пароль)). В общем, при применении SOAP данные, используемые системой защиты, надо шифровать.