2009-09-23 3 views
0

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

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

Я пробовал .htacccess, защищая папки и т. Д., Но он, похоже, не работает. Я написал скрипт входа в систему, который позволяет им войти в систему и просмотреть список файлов в их каталоге, но я не могу их щелкнуть правой кнопкой, чтобы загрузить его, не запустив их.

Нечто подобное можно увидеть здесь: http://forums.cgsociety.org/showthread.php?f=76&t=808482

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

Сайт создан на PHP с базой данных MySQL.

ответ

0

Вы можете использовать файлы cookie, чтобы указать, что пользователь был там до этого и был аутентифицирован. Сделать значение cookie достаточно случайным, поэтому его нельзя догадаться. Я бы зашифровал username . timestamp и сохранил его с именем пользователя, поэтому username_token, и таким образом вы можете вытащить людей и заставить их войти, если хотите, позже.

Затем переместите файлы из каталога webapp и у вас есть программа cgi, которая покажет файлы в каталоге и позволит им их загрузить.

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

1

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

Ваши скрипты PHP действуют как сквозная передача для реальной файловой системы. У пользователей нет разрешений на просмотр списка файлов, но ваши скрипты. У пользователей нет разрешений на доступ к файлу, но ваши сценарии позволяют открывать их в виде двоичных файлов и записывать данные для отправки пользователю.

Проведите некоторое исследование в PHP File Downloaders, это довольно стандартное поведение.