Где наиболее безопасное место для добавления сведений о соединении базы данных MySQL при подключении через PHP-скрипт?
$connection = mysql_connect($hostname, $username, $password); if (!$connection) {die('Could not connect: ' . mysql_error());} mysql_select_db($database, $connection);
Я знаю, что не рекомендуется размещать их непосредственно в скрипте, который запрашивает базу данных. Однако некоторые говорят, что вы должны поместить данные о соединении в отдельный скрипт PHP и включить этот скрипт для подключения.
Есть ли более безопасное место для размещения деталей соединения?
Обычная практика состоит в том, чтобы поместить их в отдельный файл и поместить его за пределы веб-корня. Подробнее см. В этом ответе .
Вы можете поместить его в каталог, который не находится в иерархии webapp, чтобы предотвратить доступ к нему браузера.
В зависимости от уровня паранойи вы можете написать веб-сервис, который находится за брандмауэром, и вызвать учетные данные, но это может быть излишним.
Это помогло бы, если бы мы поняли вашу архитектуру, просто ли PHP-скрипт попадает в базу данных, тогда первое предложение было бы лучше, если бы у вас были брандмауэры, например, у вас будет больше вариантов.
Если ваша ОС имеет разумные функции безопасности, это не имеет большого значения, если файл принадлежит группе с минимально возможными правами.