У меня есть сайт, в который пользователи входят в систему с использованием проверки подлинности форм, в которой я хочу ограничить доступ к файлам в определенной папке определенным пользователям.Ограничение доступа к файлам определенных пользователей определенным папкам
Так, например, папка dir/foo
будет доступна user1
, но не user2
или user3
и папки dir/bar
будут доступны user2
, но не user1
или user3
.
Папки, упомянутые выше, не создаются в момент, когда я развертываю сайт. Они создаются на протяжении всего жизненного цикла веб-сайта, и я могу узнать через код (по именам файлов), у кого должен быть доступ к файлам.
Моя настройка такова, что у меня есть некоторые пользователи, у которых есть роли Member
. A Member
представляет компанию. У каждого Member
есть пользователи с ролями Seller
, Buyer
и Viewer
. Теперь каждый пользователь, будь то Member
, Seller
, Buyer
или Viewer
, должен иметь возможность видеть документы, принадлежащие его компании. Таким образом, если Seller1
есть документ a.txt
то Seller1
должен быть в состоянии увидеть, Member1
должен быть в состоянии видеть его (Member1
является компанией, к которой Seller1
принадлежит), Buyer1
должен быть в состоянии видеть его (принадлежит Member1
), Viewer1
должен быть в состоянии его видеть (принадлежит Member1
), но Buyer2
не должен его видеть (если он принадлежит Member2
). Документы размещаются в папках, имена которых указаны после имени пользователя, которому принадлежит документ. Например, документы, принадлежащие Seller1
, находятся в папке с именем Seller1
. Кроме того, есть пользователь под названием Admin
, который может видеть все документы.
Как это сделать?
repost of [Ограничение доступа к файлам для определенных пользователей] (http://stackoverflow.com/questions/10738673/restricting-file-access-to-certain-users) –