Как обезопасить PHP-скрипты, содержащие пароль БД? - PullRequest
0 голосов
/ 09 июня 2011

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

Ответы [ 4 ]

4 голосов
/ 09 июня 2011

Рекомендуется хранить файлы конфигурации вне корневого каталога документа на случай, если ваш веб-сервер или php выйдет из строя и выплеснет необработанный текст (примечание: это маловероятно).

Однако пользователи переходят наваш сайт обычно не сможет читать содержимое ваших PHP-скриптов.

0 голосов
/ 09 июня 2011

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

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

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

0 голосов
/ 09 июня 2011

Создать файл / путь / к / секретному материалу, который может прочитать только root (root, а не nobody или apache)

SetEnv DB_USER "myuser" SetEnv DB_PASS "mypass"

Включитьэтот файл в конфигурационный каталог apache

или включите его в httpd.conf с помощью

Включите "/ path / to / secret-stuff"

0 голосов
/ 09 июня 2011

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

...