Настройка админ панели клиента Modx Revo

Настройка админ панели клиента Modx Revolution с настройкой прав доступа

Когда я начал работать на CMF Modx Revolution (до этого сажал сайты на Evolution) я открыл для себя неприятную новость - я не могу создать админку для клиента с теми правами доступа, чтобы клиент ничего не испортил на сайте. То есть с закрытыми "Элементами", рабочими файлами системы, системными настройками и так далее. Вообщем я не знал как настроить админку под клиента. Сейчас знаю :)) И хочу поделиться этими знаниями с вами!

В Evolution все было достаточно просто: создаешь права пользователю и готово! А здесь нужно проделать достаточно много шагов, но сдругой стороны - в Modx Revolution с правами на документы и файлы можно делать все, что угодно (если конечно разбираться в этом). Ну что ж, начнем!

1. Переходим в "Безопасность" - "Контроль доступа" в верхнем меню админ-панели

 

2. Заходим во вкладку "Политика доступа"

 

3. Нажимаем на кнопку "Создать политику доступа"

У нас откроется окно с полями. В поле Имя пишем "manager", шаблон политики доступа - AdministratorTemplate. Жмем кнопку сохранить

 

4. После сохранения политики доступа "manager" мы видим, что она появилась у нас в списке политик доступа

 

5. Редактируем manager

 

6. Убираем галочки ненужных параметров

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

Убираем галочки со следующих параметров:

  • access_permissions     Вывод страницы с настройками прав доступов пользователей
  • dashboards          Просмотр и управление панелями
  • element_tree          Возможность просмотра дерева элементов в левой навигационной панели
  • menu_reports          Показывать в верхнем меню пункт «Отчёты»
  • menu_security          Показывать в верхнем меню пункт «Безопасность»
  • menu_system          Показывать в верхнем меню пункт «Система»
  • menu_tools          Показывать в верхнем меню пункт «Инструменты»
  • new_static_resource   Создавать новые статичные ресурсы.
  • remove_locks          Удалять все блокировки на сайте

Обязательно нажимаем кнопку "Сохранить"

7. Переходим во вкладку "Безопасность" - "Контроль доступа" - "Роли"

 

8. Нажимаем кнопку "Создать новый", в поле Имя вбиваем Manager, Ранг - 9, нажимаем кнопку "Сохранить"

 

9. Сохраняем изменения и переходим в меню "Безопасность" - "Контроль доступа" - "Группы пользователей"

Правой кнопкой мыши жмем на "Administrator" и нажимаем "Создать группу пользователей"

 

10. Создаем новую группу: Имя - Manager, Политика бэкэнда - нет политики, жмем "Сохранить"

 

11. Находим ее в списке Групп пользователей и жмем "редактировать"

 

12. Заходим в меню "Доступ к контекстам" и нажимаем "Добавить контекст"

 

13. Контекст - mgr, Минимальная роль - Manager - 9, Политика доступа - Manager

 

14. Добавляем еще одни контекст

А точнее редактируем уже имеющийся web: Контекст - web, Минимальная роль - Manager - 9, Политика доступа - Administrator. Нажимаем кнопку "Сохранить"

 

15. Мы увидим такую картину! Сохраняем все во вкладке "Группа пользователя: Manager"

 

16. Далее: "Безопасность" - "Управление пользователями"

 

17. Создаем нового пользователя (это будет наш клиент) - нажимаем кнопку "Новый пользователь".

Имя вы ему можете задать какое угодно, я назову его - manager

 

18. Имя пользователя - manager, жмем галочку - Активный, вбиваем email

 

19. Указываем пароль

 

20. Перед тем как сохранить, зайдите во вкладку "Права доступа"

 

21. Жмем кнопку "Добавить пользователя в группу", Группа пользователя - "Manager", Роль - "Manager"

Сохраняем. На этом создание админ панели, где у клиента есть доступы только к правке и созданию страниц в дереве документов, закончено. Но этот пользователь до сих пор имеет доступ ко всем файлам системы. И поэтому мы сейчас сделаем так, чтобы он имел доступ только к одной папке, которую мы создадим в корне сайта Modx Revolution

 

22. Переходим во вкладку "Инструменты" - "Источники файлов"

 

23. Откроется список всех источников файлов. По умолчанию создан одни единственный - Filesystem

Перед созданием нового источника файлов, нужно сначала изменить этот. Нажимаем на "Filesystem" правой кнопкой мыши и выбираем "Редактировать"

 

24. Откроется такое окно. Жмем "Добавить группу пользователей"

 

25. Группы пользователей - Administrator, Минимальная роль - Super User - 0, Политика - Media Source Admin. Нажимаем "Сохранить"

 

26. Возвращаемся к Источникам файлов и создаем новый источник файлов

Назовем его "Manager", Тим источника файлов - Файловая система

Жмем "Сохранить"

 

27. Нажимаем правой кнопкой мыши на новый источник файлов "Manager" и выбираем "Редактировать"

 

28. Откроется такое окно! Нам нужно изменить первые 4 параметра

В basePath в поле значение мы вбиваем /manager/, basePathRelative и baseUrlRelative оставляем как есть со значениями "Да", в поле baseUrl пишем manager/

Жмем сохранить! Теперь осталось только задать права доступа к источнику файлов, но перед этим нам нужно задать источник файлов ко всем tv параметрам, которые будет администрировать наш клиент

29. Заходим в tv параметр

 

30. Нажимаем самую последнюю вкладку "Источники файлов"

и меняем источник файлов с "Filesystem" на "Manager". Сохраняем!

 

31. Добавляем группу пользователей в "Manager"

Теперь после всех проделанных шагов заходим в "Источник файлов" - "Manager" и добавляем группу пользователей в этот источник файлов

 

32. Группы пользователей - Manager, Минимальная роль - Manager - 9, Политика - Media Source Admin. Жмем "Сохранить"

Сразу после сохранения источник файлов "Manager" исчезнет для администратора. Для того чтобы можно было редактировать этот источник файлов, нужно зайти в меню "Безопасность - Контроль доступа". Открыть на редактирование группу менеджера: Manager и во вкладке "Источники файлов" найти и удалить источник Manager. Только тогда мы сможем вновь редактировать данный источник из под администратора.

 

33. На всякий случай очищаем кэш

и наш пользователь с ограниченными правами и доступами к файловой системе создан!

 

Не скажу, что это достаточно легко, но если делать это на автоматизме, то это не покажется чем то тяжелым. Надеюсь у вас все получилось! Удачи в проектах!

Похожие статьи