Назад | Перейти на главную страницу

Почему считается плохой практикой защищать с помощью SSL только одну страницу, а не весь сайт

Я знаю, что защита всех страниц с помощью SSL замедлит работу веб-сайта и добавит накладные расходы на ресурсы сервера.

Я также вижу, что многие другие веб-сайты защищают только свои страницы входа и регистрации, что я также хочу сделать на моем сервере, на котором запущен apache.

Почему считается плохой практикой защищать только страницы, на которых вводится пароль пользователя, а не весь сайт?

Кроме того, вместо использования чего-то вроде https://mysite.com/login.php, стоит ли мне перейти на https таким образом: https://secure.mysite.com/login.php?

Безопасность файлов cookie - это главное, на что я бы указал в вашем подходе.

Пользователь, который входит на вашу безопасную страницу входа, получает cookie для своего сеанса, верно? Затем этот файл cookie передается в виде обычного текста для тех, кто наблюдает за проводом (Firesheep), чтобы перехватить и украсть сеанс.

Есть дополнительные накладные расходы с точки зрения времени согласования и нагрузки на ЦП от SSL, но они довольно минимальны. Если на вашем сайте происходит что-то конфиденциальное, просто везде используйте SSL.

Смотрите также: этот вопрос

Я знаю, что защита всех страниц с помощью SSL замедлит работу веб-сайта и добавит накладные расходы на ресурсы сервера.

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

Главный вывод: если SSL решает ваши проблемы с безопасностью, используйте его.

Почему считается плохой практикой защищать только страницы, на которых вводится пароль пользователя, а не весь сайт?

Это не. Ну не обязательно. Вам действительно нужно посмотреть, какие данные вы пытаетесь защитить, и какие атаки пытаетесь предотвратить.

Общие области для рассмотрения:

  • Есть ли конфиденциальные данные на всем вашем сайте или только на ограниченном наборе страниц?
  • Будет ли проще реализовать SSL на некоторых страницах, а не на всех?
  • Вы имеете дело с данными кредитной карты?
  • Есть ли у вас пользователи, которые входят на ваш сайт и на страницы участников с личными данными?
  • Вы собираете данные через формы, что это за данные?

Иногда вам может потребоваться защитить только части вашего веб-сайта, такие как страница входа и любые страницы участников. Общедоступные части вашего веб-сайта могут не требовать SSL, и их использование HTTP может дать вам значительные преимущества в производительности.

Некоторые люди внедряют SSL на своем сайте, потому что это упрощает работу..

Конечно, реализация SSL может быть сложной задачей, и иногда попытки разместить SSL на одной странице, но не на другой, могут означать значительно больше работы. SSL на всем вашем сайте помогает защитить его в будущем, комплексно сокращает нагрузку на разработчика, позволяет избежать ошибок и сообщений об ошибках для пользователей (или, что еще хуже, случайного раскрытия конфиденциальных данных через HTTP).

Кроме того, вместо использования чего-то вроде https://mysite.com/login.php, стоит ли мне перейти на https таким образом: https://secure.mysite.com/login.php?

Существует множество способов реализовать вход (и безопасность) с помощью PHP, но вы не вдавались в подробности здесь, чтобы безопасно комментировать. Сначала вы должны обрисовать, чего вы пытаетесь достичь, затем дать обзор того, как вы собираетесь это делать, а затем вы можете начать рассматривать плюсы и минусы альтернатив.

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

Так что в основном да, имеет смысл минимизировать количество страниц с использованием SSL. Вот почему вы часто видите, что банковские сайты защищают только фактические страницы учетной записи через https. Домашняя / целевая страница обычно представляет собой старый добрый http.

С другой стороны, если вы действительно не являетесь сайтом вроде Twitter, Facebook или Gmail, беспокоиться об этом - это немного преждевременная оптимизация. Сначала сделайте это просто, если можете. Помните об этой проблеме и помните о стратегиях обновления, когда ваш сайт, наконец, получит большой трафик.

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