Персональный доступ к файлам на сайте

от автора

Задача: среди всех зарегистрированных пользователей на сайте есть пользователь с именем 13335. Для него загружен файл, который не должен видеть никто, кроме него самого.

Решение:

1) Создаем группу ресурсов.

Безопасность -> Группы ресурсов -> Создать группу ресурсов.
Указываем имя: 13335;
Контексты по умолчанию web;
Ставим галку «Создать параллельную группу пользователей». Очевидно, что произойдет.
Затем из правой колонки всех наших ресурсов выбираем те, которые должен видеть пользователь и перетаскиваем мышкой в левую колонку, в нашу новую группу ресурсов.

2) Создаем внутри личного кабинета ресурс 13335:

Например, так:

В содержимое ресурса вписываем

[[!FileLister? &path=`assets/files/patch/13335`]]

Указывая, что тут будет ссылка на папку. В ней как раз нужный нам файл.
В закладке «Группы ресурсов» добавляем группу ресурса «13335».

3) Создаем группу пользователей.

Безопасность -> Контроль доступа -> Группа пользователей. Т.к. мы ставили галку «Создать параллельную группу пользователей», то она у нас уже есть. Осталось проверить и дозаполнить поля. Вызываем контекстное меню, выбираем «Редактировать группу пользователей».

Закладка «Общая информация».
Имя: 13335;
Родительская группа: 0;
Панель: Default.

Закладка «Пользователи».
Добавляем в группу уже существующего пользователя 13335.
Роль указываем — Member-9999

Закладка «Доступ к контекстам».
Добавляем новый контекст:
Контекст: web.
Минимальная роль: Member — 9999;
Политика доступа: Context.

Закладка «Доступ к группам ресурсов».
Добавляем уже созданную группу ресурсов 13335.

По идее все.

Прочитала и пыталась понять все из этого, вот этого и книжки Шпака по web разработке средствами MODx. На основе прочитанного сделала все методами тыка и проб и ошибок.

ссылка на оригинал статьи http://habrahabr.ru/post/186836/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *