Безопасность Codeigniter - база данных mysql
Я на завершающей стадии внедрения сайта CodeIgniter, для которого требуется действительно простая система входа в систему. Один пользователь и один пароль для защиты административной области. Я думаю, что буду использовать одну из многих библиотек аутентификации CodeIgniter, которая должна позволить мне гарантировать, что люди не смогут читать из базы данных, не войдя в систему как администратор (надеюсь). Есть ли какие-нибудь вопиющие дыры в таком устройстве, как это? Должен ли я принимать дальнейшие меры, помимо использования такой библиотеки, чтобы обеспечить безопасность данных в базе данных MySQL? Он будет размещен на общем сервере; это означает, что конфигурация сервера будет незначительной или невозможной.
4 answers
Здесь подробно обсуждаются доступные системы аутентификации: Как мне выбрать библиотеку аутентификации для CodeIgniter?
Последняя версия Redux, похоже, является самой любимой.
Я использовал в прошлом (с отличными результатами) DX Аутентификация 1.0.6.
Вы можете найти его по адресу http://codeigniter.com/forums/viewthread/98465/
Я бы создал простую аутентификацию на основе формы и использовал надежный пароль.
HTTP-аутентификация имеет слишком много проблем IMHO:
- Проще взломать грубой силой.
- Любой, кто обнюхивает запрос, может определить имя пользователя и пароль, которые используются, но им это даже не нужно; они могут просто использовать идентичный HTTP самостоятельно.
- Как только появляется этот диалог, его трудно отклонить, что может раздражать.
- Многие браузеры будут дважды запрашивать пароль, прежде чем впустить вас.
- Трудно выйти из системы или сменить пользователя, обычно вам приходится выходить из браузера.
- Легко забыть, что вы позволили браузеру сохранить ваши учетные данные, что является еще одним потенциальным риском для безопасности.
Если он находится на сервере apache, то я бы подумал о том, чтобы просто создать защищенный каталог htpasswd. Подробнее об этом читайте здесь.