Методы защиты сайта на чистом HTML

Мне поручили защитить веб-сайт на чистом HTML для кого-то, и я не совсем уверен, как подойти к этой проблеме. Вот ограничения:

  1. Все логины должны быть связаны с нашим текущим доменом Active Directory.
  2. (Необязательно, но желательно) Решение должно включать в белый список запросы, поступающие из нашей интрасети, то есть, если кто-то попытается получить доступ к сайту из кампуса, он будет немедленно допущен.
  3. (Необязательно, но желательно) Решение должно включать в белый список запросы, сделанные с нашего узлового веб-сайта, независимо от того, находятся ли они в кампусе или нет. Упомянутый центральный сайт защищен логинами, которые ссылаются на наш домен Active Directory, так что это, по сути, запрос на транзит.

Подавляющее большинство нашей пользовательской базы совершенно не разбираются в технологиях, поэтому небольшая площадь с небольшим количеством запросов на вход в систему — это nessecery.

Обычно у меня не было бы проблем с этим, но это сайт на чистом HTML, поэтому мои возможности немного ограничены. Мои текущие идеи:

  1. Используйте службу безопасности каталогов IIS6, чтобы просто принудительно выполнить аутентификацию Active Directory. Я не могу использовать IP-разрешение/запрет, потому что эта проверка предшествует чему-либо еще в жизненном цикле и быстро отклоняет что-либо в списке запрещенных. Я не могу изменить это поведение.
  2. Закодируйте файл aspx, который находится на нашем центральном веб-сайте, который предварительно загружает интегрированные учетные данные безопасности Windows для пользователя, автоматически аутентифицируя их на веб-сайте HTML. Однако, что касается IIS, это два разных веб-сайта, и это в лучшем случае звучит как плохая практика, а в худшем - как имитация попытки межсайтового вторжения.

Я должен признать, что застрял. Кто-нибудь когда-нибудь сталкивался с такой проблемой раньше?


person Community    schedule 28.05.2009    source источник


Ответы (2)


Предполагая, что вы используете Windows2003/IIS6 и ваш веб-сервер является частью вашего домена, вы можете сделать следующее:

  1. Настройте свой веб-сайт для использования встроенной и/или базовой аутентификации для аутентификации в Active Directory. Также отключите анонимный доступ. Вы найдете эти настройки, нажав «Изменить» на вкладке «Безопасность каталога» вашего веб-сайта в диспетчере IIS. Вам нужно будет включить Basic только в том случае, если ваши пользователи будут использовать браузер, отличный от Internet Explorer. Если вы используете Basic, вам также следует использовать SSL для защиты ваших имен пользователей и паролей. Уровень доступа определяется разрешениями, установленными для файлов/каталогов в корневых/дочерних каталогах вашего сайта. Любые файлы в этих каталогах будут доступны только аутентифицированным пользователям.

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

  3. Я не уверен, что требования пункта №3 будут выполнены. Если ваш центральный веб-сайт использует олицетворение, он может передать ваши учетные данные Windows на другой сервер в вашем домене, но я подозреваю, что нет.

Использованная литература:

«Как настроить проверку подлинности веб-сайта IIS в Windows Server 2003» http://support.microsoft.com/kb/324274/

«Internet Explorer может запросить пароль» http://support.microsoft.com/kb/258063< /а>

«Как использовать зоны безопасности в Internet Explorer» http://support.microsoft.com/kb/174360/EN-US/

person Jeremy    schedule 28.05.2009

Если сайт на чистом HTML работает в IIS, преобразование его в веб-приложение .Net только для того, чтобы обернуть его ресурсы в ваши настраиваемые условные формы входа с использованием более богатых оболочек безопасности ASP.Net, кажется достаточно естественным. Вы можете обслуживать чистые HTML-файлы из этого приложения.

Я вижу, что это не имеет недостатков для сопровождающих контент.

person Tetsujin no Oni    schedule 28.05.2009
comment
Мне было интересно, сработает ли это, но один из моих коллег посоветовал мне преобразовать каждый html-файл на сайте в aspx, чтобы защититься от глубоких ссылок и других подобных вещей. Это не точно, или есть более простой способ сделать это? - person ; 28.05.2009