Где наиболее безопасное место для размещения сведений о соединении MySQL для PHP - PullRequest
4 голосов
/ 27 февраля 2010

Где наиболее безопасно разместить данные для подключения к базе данных MySQL при подключении через скрипт PHP?

$connection = mysql_connect($hostname, $username, $password);
if (!$connection) {die('Could not connect: ' . mysql_error());}
mysql_select_db($database, $connection);

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

Есть ли более безопасное место для размещения сведений о соединении?

Ответы [ 3 ]

6 голосов
/ 27 февраля 2010

Обычная практика - помещать их в отдельный файл и размещать вне корневого веб-каталога. См. этот ответ для подробностей.

0 голосов
/ 27 февраля 2010

Если ваша ОС имеет разумные функции безопасности, не имеет большого значения, где файл принадлежит группе с минимально возможными правами.

0 голосов
/ 27 февраля 2010

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...