Построение защищенных Web-приложений на основе IIS и MS SQL Server

Автор: Пользователь скрыл имя, 12 Июня 2012 в 15:50, курсовая работа

Описание работы

В IIS 6.0 строгая изоляция была представлена в качестве подхода к осуществлению защиты по умолчанию. Это был существенный шаг в строну по сравнению с другими версиями IIS, которые устанавливали и активировали почти все функции, присутствующие в установочном пакете, в результате чего пользователь получал полностью укомплектованный веб-сервер по умолчанию.

Работа содержит 1 файл

kurs.docx

— 5.59 Мб (Скачать)


Изм.

Лист

№ докум.

Подпись

Дата

Лист

 


Введение

 

 

В IIS 6.0 строгая изоляция была представлена в качестве подхода к осуществлению защиты по умолчанию. Это был существенный шаг в строну по сравнению с другими версиями IIS, которые устанавливали и активировали почти все функции, присутствующие в установочном пакете, в результате чего пользователь получал полностью укомплектованный веб-сервер по умолчанию. В IIS 6.0 некоторые функции были удалены из установки по умолчанию, и многие другие функций хоть и устанавливались, но были отключены.

IIS 7.0 сделал следующий шаг в  развитии такого подхода, представив  в качестве базового подхода  минимальную установку. IIS 7.0 включает  полностью модульный веб-сервер, который разбит на отдельные компоненты, количество которых более чем в 4-5 раз превышает число устанавливаемых компонентов в предыдущих версиях IIS. С IIS 7.0 устанавливается и включается минимальное число компонентов. У такого подхода есть несколько преимуществ:

  • меньшее количество устанавливаемых компонентов означает меньшую поверхность для потенциальных атак;
  • меньшее количество устанавливаемых компонентов означает меньшие затраты на управление, исправление и обслуживание;
  • меньшее количество компонентов, загружаемых в память, означает улучшенную производительность, масштабируемость и надежность.

В IIS 7.0 представлено несколько ключевых упрощений в управлении безопасностью, которые позволяют проще управлять  системой защиты и при этом сохранять  должны уровень безопасности. Эти  усовершенствования управления включают в себя:

  • широкую поддержку делегированного администрирования, позволяющую в простой и безопасной манере передавать некоторые задачи конфигурирования и управления пользователям, не являющимся администраторами;
  • объединенное управление аутентификацией и авторизацией, позволяющее всем типам аутентификации и авторизации, включая Forms authentication и URLAuthorization, получать управление из одного места для всех типов контента;
  • веб-серверу выделены встроенные учетный записи пользователей и групп, позволяя тем самым использовать для машин общие идентификаторы безопасности (SID), что упрощает управление NTFS ACL, организацию «песочница» пулов приложений и управление удостоверениями.

В IIS 7.0 также представлены несколько  новых функций безопасности, которые  улучшают защиту веб-сервера, включая  Фильтрацию запросов. Новая фильтрация запросов, встроенная в IIS 7.0, может «на  лету» фильтровать запросы на основании команд, расширения файлов, размера, пространства имен и последовательностей. Большая часть этого функционала, ранее доступная в URLScan (фильтр ISAPI доступен посредством загрузки из Сети), теперь доступна в виде встроенного модуля IIS 7.0.

В прошлом было очень сложно установить делегирование задач администрирования для пользователей IIS, не являющихся администраторами.

В IIS 5.0 инструмент администрирования  позволял определять веб-операторы, и  в IIS 6.0 команда разработчиков IIS для  решения этих задач представила списки управления доступом метабазы. Каждое из этих решений имело свои преимущества и недостатки.

Для IIS 7.0 была разработана новая модель делегирования, обладающая широкими возможностями. Благодаря новой архитектуре, администраторы могут:

  • устанавливать делегируемую инфраструктуру администрирования с использованием администраторов доступа Windows и других ОС;
  • конфигурировать настройки для сервера, сайта и приложений. Администраторы сайта и приложений не обязаны быть администраторами сервера в целом, чтобы управлять сайтами и приложениями.

Чтобы гарантировать безопасность IIS 7.0 сразу после установки, по умолчанию  делегирование полностью закрыто.

С самого начала цель состояла в том, чтобы гарантировать, что IIS 7.0 будет  столь же безопасным, как и его  предшественник, IIS 6.0. В IIS 6.0 был один главный файл конфигурации, называемый метабазой, но настройка сценариев делегирования с помощью списков управления доступом метабазы была не столь распространенной и не тривиальной задачей.

В новой модели делегирования IIS 7.0 файл applicationHost.config (замена метабазы) защищается насколько это возможно. В то же самое время, настройка делегирования администраторами осуществляется достаточно удобно.

Когда раздел «заблокирован», это  означает, что он не может быть переопределен администратором сайта или приложения. Когда раздел «разблокирован», это означает, что он может быть изменен администратором сайта или приложения.

В качестве операционной системы, в  которой выполнялась курсовая работа, была выбрана Windows Server 2008 R2.

Windows Server 2008 R2 поддерживает следующие возможности:

  • полная поддержка всех сценариев делегирования клиентов на сервере;
  • полная поддержка делегирования через пользовательский интерфейс, которая включает в себя использование участников систем, отличных от Windows.

В предыдущих версиях IIS, поддерживающих приложения ASP.NET, было две архитектуры  безопасности, обеспечивавших комплексное  решение для разработчиков приложений. Первая модель предоставлялась IIS, а  вторая – ASP.NET. В IIS 7 эти модели были объединены. Теперь в IIS 7 есть один конвейер, который будет:

  • полностью поддерживать участников Windows, которые находятся в локальной базе данных учетных записей или Active Directory (как это было раньше);
  • полностью поддерживать участников систем, отличных от Windows;
  • обеспечивать проведение всех процессов аутентификации и авторизации из одного места.

В числе прочих преимуществ данной архитектуры присутствует тот факт, что IIS 7 может расширять богатую  систему членства, предоставляемую ASP.NET2.0. Новая система членства поддерживает все то, что поддерживает ASP.NET2.0 (например, SQL).

Как и в предыдущих версиях IIS, все  предыдущие схемы аутентификации по-прежнему доступны в IIS 7, главным образом это:

  • Windows Authentication;
  • Anonymous Authentication;
  • Basic Authentication;
  • Digest Authentication;
  • Certificate Authentication.

После того, как из любого из этих типов  аутентификации создается маркер, он может быть использован как приложением IIS, так и любым приложением ASP.NET без какой-либо дополнительной настройки.

Forms Authentication – это новая функция аутентификации в IIS 7. В прошлом она была доступна только приложениям ASP.NET, но поскольку IIS 7 обладает новой архитектурой, Forms Authentication теперь может быть использована для аутентификации удостоверений систем, отличных от Windows, как и другие схемы аутентификации, описанные выше.

При использовании инструмента  администрирования IIS 7 или файлов конфигурации, все политики аутентификации и авторизации (и для ASP.NET, и для IIS 7) могут быть сконфигурированы в разделах <authentication> и <authorization> соответственно в группе <system.webServer>.

 

Это облегчает администраторам  задачу определения правил и просмотра  того, что происходит на серверах.

1 Internet Information Server

 

 

1.1 Установка IIS 7 на Windows Server 2008 R2

 

 

Для выполнения данной курсовой работы была выбрана операционная система  Windows Server 2008 R2. Покажем основные этапы установки IIS 7 в данной операционной системе.

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

Выбираем пункт «Добавить роли»  в окне «Задачи начальной настройки». Появляется Мастер добавления ролей. Так как в задании к курсовой работе требуется изучить безопасность IIS 7, из предлагаемого списка ролей выбираем «Веб-сервер (IIS)».

 

Рисунок 1 – Выбор роли сервера

 

Далее Мастер добавления ролей предлагает сконфигурировать выбранную роль. Список служб ролей, предлагаемых для роли сервера «Веб-сервер (IIS)» представлен на рисунке 2.

 

Рисунок 2 – Службы роли «Веб-сервер (IIS)»

 

Для выполнения данной курсовой работы наиболее интересны службы раздела  «Безопасность» из предлагаемых служб  роли. Рассмотрим их подробнее.

На рисунке 3 представлена служба «Обычная проверка подлинности». В правой части  рисунка приведено ее описание.

 

Рисунок 3 – Служба «Обычная проверка подлинности»

 

На рисунке 4 представлена служба «Проверка подлинности Windows». В правой части рисунка приведено ее описание.

 

Рисунок 4 – Служба «Проверка подлинности Windows»

 

На рисунке 5 представлена служба «Дайджест-проверка подлинности». В правой части рисунка  приведено ее описание.

 

Рисунок 5 – Служба «Дайджест-проверка подлинности»

 

На рисунке 6 представлена служба «Проверка  подлинности с сопоставлением сертификата клиента». В правой части рисунка приведено ее описание.

 

Рисунок 6 – Служба «Проверка подлинности  с сопоставлением сертификата клиента»

 

На рисунке 7 представлена служба «Проверка  подлинности с сопоставлением сертификата клиента IIS». В правой части рисунка приведено ее описание.

 

Рисунок 7 – Служба «Проверка подлинности  с сопоставлением сертификата клиента  IIS»

 

На рисунке 8 представлена служба «Авторизация URL-адресов». В правой части рисунка приведено ее описание.

 

Рисунок 8 – Служба «Авторизация URL-адресов»

На рисунке 9 представлена служба «Фильтрация  запросов». В правой части рисунка приведено ее описание.

 

Рисунок 9 – Служба «Фильтрация запросов»

 

На рисунке 10 представлена служба «Ограничение по IP-адресам и доменам». В правой части рисунка приведено ее описание.

 

Рисунок 10 – Служба «Ограничение по IP-адресам и доменам»

 

Мастер добавления ролей по умолчанию  предлагает установить только службу «Фильтрации запросов». На данном этапе  согласимся с настройками по умолчанию. Впоследствии можно будет добавить необходимые службы, если потребуется.

После установки Мастер добавления ролей выведет на экран установленные компоненты. Экран завершения установки IIS 7 показан на рисунке 11.

 

Рисунок 11 – Результаты установки роли «Веб-сервера (IIS)»

 

В результате для Windows Server 2008 R2 была установлена роль «Веб-сервера (IIS)».

 

 

 

 

1.2 Аутентификация и система разрешений Internet Information Server: стандартные средства и средства третьих фирм

 

 

1.2.1 Аутентификация стандартными средствами IIS

 

 

Большая часть серверов IIS работает без требований к пользователю аутентифицироваться - то есть в режиме анонимного доступа. На самом деле такие анонимные пользователи работают от имени специальной учетной записи IUSR_имя_компьютера. Конечно же, настоятельно не рекомендуется использовать эту учетную запись для каких-то других целей, добавлять ее в другие группы (кроме группы Guests), в которой эта учетная запись находится по умолчанию и т.п.

Однако в некоторых ситуациях  анонимным доступом не обойтись. Обычно аутентификация требуется в двух случаях:

  • когда на Web-сервере находятся ресурсы, доступ к которым нужен не всем пользователям (проще говоря, чтобы задействовать систему разрешений);
  • для целей дополнительного протоколирования - чтобы можно было записывать информацию о том, какие именно пользователи обращались к ресурсам Web-сайта (во многих ситуациях, например в локальной сети, в этом случае можно обойтись без аутентификации - поскольку текущее имя пользователя автоматически записывается в логи Web-сервера).

Аутентификация в IIS, к сожалению, полностью основывается на системе безопасности Windows. Фактически есть возможность предоставить доступ только тем пользователям, для которых создана локальная учетная запись (или доменная учетная запись, если компьютер с IIS входит в домен). Конечно, по этой причине доступ на IIS со стандартными средствами можно предоставлять только пользователям локальной сети (или, например, очень ограниченному числу внешних партнеров). Рассчитывать на организацию системы аутентификации для пользователей из Интернета стандартными средствами не приходится, поскольку для каждого пользователя потребовалось бы создавать свою учетную запись Windows. Обычно для таких целей используются или самостоятельно созданные Web-приложения, или специальные надстройки на IIS, которые обеспечивают отдельную, независимую от Windows систему аутентификации. Ниже будут рассмотрены стандартные возможности аутентификации, а затем - дополнительные средства других производителей.

Информация о работе Построение защищенных Web-приложений на основе IIS и MS SQL Server