2014-02-20 2 views
0

Итак, у меня есть этот сайт, над которым я работал некоторое время, - и я беспокоюсь о безопасности.Безопасность PHP/MySQL Могу ли я замаскировать соединение с БД?

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

В настоящее время я использую функциональность Require_Once для вызова соединения с БД.

Есть ли лучший, более безопасный способ сделать это? Мне действительно не нравится иметь имя пользователя, пароль и БД, которые можно читать, - если кто-то решил потупиться.

Любые мысли будут оценены. Безопасность важна для сайта, так как информация пользователя хранится там (не только хешированный пароль, но BDay и другие личные вещи, а не SS #.)

+1

Что вы подразумеваете под 'mask'? –

+0

, если был какой-то способ зашифровать соединение, но кто-то указал на ответ ниже. –

ответ

2

Храните имя пользователя, пароль и подключение к Интернету. вне общественной директории:

/someweb 
    /data 
    /config <- db connection here 
    /web <- web contents and document root here 

Если установить привилегии/someweb/доступа к конфигурации должны быть доступны из Apache (но не от любого пользователя), это должно быть безопасным «, если кто-то решил пойти ковыряться "

Если вы беспокоитесь d больше (т.е. кто-то может получить резервную копию someeb), вы можете зашифровать содержимое/config и расшифровать его из другого места.

+0

ЭТО! Это прекрасно! Благодаря! –

1

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

Как говорит Ян Туро, лучше всего разместить информацию где-нибудь за пределами вашего общего каталога.

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

Смежные вопросы