Защитите файл PHP - PullRequest
       6

Защитите файл PHP

0 голосов
/ 19 января 2010

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

Защита паролем?Требуется специальное печенье, которое есть только у меня?

Дайте мне несколько идей ...

Ответы [ 4 ]

12 голосов
/ 19 января 2010

Я бы порекомендовал вам прекратить хранить пароли и вместо этого хранить хэш пароля. Даже вы не должны знать пароли своих пользователей.

То, что вы делаете, даже не авторизация и авторизация. В лучшем случае это идентификация. Если вы одержимы этим, то, что сказал Chacha102, плюс вам также захочется chgrp и chmod, чтобы его могли просматривать только пользователи Интернета и ваш пользователь.

1 голос
/ 19 января 2010

Не храните пароли своих пользователей в виде открытого текста, хешируйте их в базе данных.

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

1 голос
/ 19 января 2010

Если вы хотите увидеть, если через браузер, попробуйте следующее:

Посмотрите на WWW Basic Authentication, в которой браузер предложит вам ввести имя пользователя и пароль.

http://www.htaccesstools.com/htaccess-authentication/
http://eregie.premier -ministre.gouv.fr / manual / howto / auth.html

Если у вас статический IP-адрес, вы можете убедиться, что только ваш IP-адрес может видеть страницу:

if($_SERVER['REMOTE_ADDR'] != '192.168.1.1')
{
      die();
}

Если это не предполагается для просмотра в браузере, ЛУЧШЕЕ решение - поместить файл над DocumentRoot. AKA:

Если ваш файл index.php находится в / Path / To / Root / Public_HTML, поместите файл в / Path / To / Root

0 голосов
/ 19 января 2010

Если вы храните все данные в месте, находящемся под wwwroot, то вы рискуете загрузить файл, будь то из-за плохой конфигурации или из-за уязвимости безопасности. Также возможно, что это решение включает жесткое кодирование пользователей и паролей, что затрудняет ротацию паролей. И если пользователи могут изменять значения в файле, вы должны быть предельно осторожны, чтобы они не могли внедрить код PHP в файл паролей, иначе они смогут принять ваше приложение. А способность администратора видеть пароли в виде открытого текста считается плохой практикой, и ее следует избегать.

Современная лучшая практика - не делать это таким образом, если это вообще возможно. Храните данные в месте, откуда веб-сервер обычно не разрешает прямые загрузки (например, вне wwwroot или в базе данных, где вы защищены от проблем с внедрением SQL), реализуйте схему аутентификации и авторизации и полагайтесь на нее контролировать, кому разрешено делать.

Посетите www.owasp.org, чтобы узнать больше - это отличная отправная точка.

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