Непростая задачка (разграничение прав по папкам)

Статус
В этой теме нельзя размещать новые ответы.

RobbeR

Guest
>>alekciy: А связаны ли страницы ссылками из разных директорий?

Нет. Директории между собой несвязаны. Связано только то, что внутри директорий.

>>Фанат: перед вытягиванием я, видимо, должен скачать файл acl.txt, увидеть, что меня в нём не перечислено, и отказаться от своего намерения
=) Смешно... Я долго смеялся...

>>crocodile2u: Почитай доку по Apache. Там есть возможности авторизации, и допуска в определенную папку определенных пользователей или даже определенных групп пользователей.
В apache та есть возможности, а есть ли возможности у PHP использовать эти возможности? Во как.
 

Фанат

oncle terrible
Команда форума
файл .htaccess (.htpasword) - это обычный текстовый файл.
ты можешь записать туда всё, что хочешь, с помощью команд fopen и fwrite

-~{}~ 16.11.05 12:51:

http://php.rinet.ru/manual/ru/features.http-auth.php
пароль, введённый таким образом в корне сайта, будет действовать для всех папок, защищённых хтаксессом.
тебе осталось только управлять файлами пользователей с помощью пхп

есть ещё древний модуль mod_mysql_auth но он, вроде бы, с новыми версиями мускуля не работает
 

alekciy

Новичок
Фанат
как же, блин запарили ламеры, ....
Оскорблять не хорошо.... Не ламер я. Чайник.

который ни читать, ....
С чтением проблем не возникает

ни думать не умеют....
А вот это ещё лучше получалось ))

Я утверждаю, что сделать это можно именно потому, что и читать и думать умею.

я запрашиваю файл http://site.ru/lib/h/her.jpg
каким образом твоя суперсистема авторизации помешает его мне вытянуть?

Просто тебе его не отдаст.

Видимо твой праведный гнев можно будет погасить только примером работающего скрипта.
Спорим, что напишу?
К тому же я не отверждаю, что это будет оптимальный способ. Оптимальные это через .htaccess. Но альтернатива возможна.
 

Фанат

oncle terrible
Команда форума
только примером работающего скрипта
прежде, чем писать скрипт, надо сначала думать головой - как он будет работать
Просто тебе его не отдаст.
какими средствами?
В директорию к которой у него нет права доступа он попасть не сможет.
какой механизм это обеспечит?
 

RobbeR

Guest
>> Фанат:
файл .htaccess (.htpasword) - это обычный текстовый файл.
ты можешь записать туда всё, что хочешь, с помощью команд fopen и fwrite

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

Фанат

oncle terrible
Команда форума
это ровно тот самый вариант, который ты хотел.
с помощью пхп управлять механизмом авторизации веб-сервера
 

RobbeR

Guest
Спасибо всем, кто принимал участие в решение данной задачи.

Не стоит ругаться. Каждый имеет право высказывать свои мысли, тем более, если они в тему и могут быть полезными.

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

alekciy

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

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

Фанат

oncle terrible
Команда форума
alekciy
Я тебе задал вопросы.
потрудись ответить на них.
 

alekciy

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

alekciy

Новичок
Нехилая скорость ответа! )))
Ушел писать, к завтрому готовый не обещаю. А вот к понедельнику....
 

Фанат

oncle terrible
Команда форума
Если я сейчас начну на пальцах объяснять, ты начнешь кричать, что это работь не будет.
а что - если ты пишешь бред, я должен поддакивать, что ли?

И что - так трудно обяснить, каким образом пхп запретит мне забрать файл из папки?
Если ты не можешь объяснить - значит не знаешь, как это будет работать.
 

alekciy

Новичок
Ну ладно, алгоритм приблизительно таков.

Пользователь не имеет доступа к страницам вообще. Скрипт сам будет отдавать пользователю страницы которые будет создавать из HTML страниц. При этом все линки на странице он будет перебивать в ссыслки вида script/dir1/dir2/index.htm (ну или через GET с в духе script?dir1="lib"&dir2="book" сейчас с ходу не скажу точно).
Пользователь кликает ссылку и посылает запрос с адресом для скрипта. Скрипт через $_SERVER получает искомый адрес и разбирает его по директориям. И потом последовательно в каждой директории открывает файл acl.txt и проверяет, имеет ли текущий пользователь права на доступ в эту директорию. Если такого права нет хотя бы для одной директории, то страница не отдается. Выводиться сообщение об ошибке.

Это приблизительный алгоритм. Детали нужно уточнять на практике.
 

Фанат

oncle terrible
Команда форума
ты это читал?
Писать заумные скрипты, которые позволяют спрятать библиотеку за пределом видимости и с помощью пхп выдавать страницу по запросу тоже не хочется.

Была надежна на средства сервера
-~{}~ 16.11.05 16:20:

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

alekciy

Новичок
Фанат
кому нужен этот твой велосипед
Да ни кому не нужен. Я и так отлично знаю, что проще это делается через правку .htaccess.
НО! Спор-то возник не по вопросу оптимальности. Ты сказал, что на PHP это невозможно ("т.е. средствами PHP ограничить доступ к директории невозможно " и проч.). Я же уверен, что это реализовать реально.

ты это читал?
Читал, но это было уже после моего сообщения.

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

-~{}~ 18.11.05 16:31:

В общем ясно, реализовать это практически можно, и ты с этим согласен....
 

Popoff

popoff.donetsk.ua
Уже которое сообщение в форуме, а не знает, как вставлять цитаты. Спорит о том, в чем не разбирается. Хочет доказать на словах то, что куда проще доказать на практике. Считает, что написать программу на РНР сложнее, чем написать сообщение в форуме. Считает, что объяснение "на пальцах" учитывает не меньше или по крайней мере не значительно меньше деталей, чем учитывается в программе. Видимо, не понимает, что ответ на вопрос типа "как определить, является ли число простым", данный "на пальцах", на практике не для всех чисел позволит определить, является ли оно простым. Считает, что ответы на вопросы типа "обещаю ли?", "будет ли готово?", "хочу ли?", "могу ли?" помогут быстрее написать программу на РНР. Читая предыдущее предложение думал что-нибудь типа "тю, дурак, решил наехать" вместо "для каких чисел и почему не получится?" Можно написать систему автоматизированного выставления диагноза. :)
 

Alesto

Новичок
А смысл всего этого? Зачем кому-то что-то запрещать, когда проще кому-то чтото определенное разрешить.

И вообще. Читайте мануал <http://www.php.net/manual/>.
 

alekciy

Новичок
Popoff
Хм... кому это? к чему это?... поток сознания облеченный в тектовую форму?
Один флуд.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху