modxaccessmanager

===================== Скрипт для создания пользователей с определенными правами и своим источником файлов для админки.

По умолчанию будет создан менеджер с логинам и паролем manager и медиа источником с корневым каталогам assets/uploads из прав у пользователя будет только возможность работать с ресурсами, а c пунктом меню доступ только к "Приложения". screenshot

Для настройки политики доступа необходимо в массив $accessPolicy добавить название определенной политики с значение 0 или 1

Способ использования

  1. Установить в Modx дополнение Console после чего скопировать php код и выполнить в консоли

  2. Скопировать modxaccessmanager.php в assets, раскомментировать сверху скрипта кусок кода после чего дернуть его по url http://my-site.ru/assets/modxaccessmanager.php Отчет можно посмотреть в http://my-site.ru/manager/?a=system/event

Весь список политик доступов

$accessPolicy = array(
    'about' => 1, //Страница «О проекте».
    'access_permissions' => 1, //Страницы и действия, связанные с правами доступа.
    'actions' => 1, //Страница «Действия».
    'change_password' => 1, //Пользователь может менять свой пароль.
    'change_profile' => 1, //Пользователь может редактировать свой профиль.
    'charsets' => 1, //Видеть список кодировок.
    'class_map' => 1, //Видеть список классов в карте классов.
    'components' => 1, //Видеть меню «Компоненты».
    'content_types' => 1, //Страница «Типы содержимого».
    'countries' => 1, //Смотреть список стран.
    'create' => 1, //Возможность «создавать» новые объекты.
    'credits' => 1, //Посмотреть страницу создателей.
    'customize_forms' => 1, //Просматривать и работать на странице «Настройка форм».
    'dashboards' => 1, //Просмотр и управление панелями.
    'database' => 1, //Страница «Информация о системе».
    'database_truncate' => 1, //Возможность усечения таблицы базы данных.
    'delete_category' => 1, //Удалять и перемещать категории.
    'delete_chunk' => 1, //Удалять и перемещать чанки.
    'delete_context' => 1, //Удалять и перемещать контексты.
    'delete_document' => 1, //Удалять и перемещать ресурсы.
    'delete_eventlog' => 1, //Очищать журнал системных событий.
    'delete_plugin' => 1, //Отключать и удалять плагины.
    'delete_propertyset' => 1, //Отключать и удалять наборы параметров.
    'delete_role' => 1, //Отключать и удалять роли.
    'delete_snippet' => 1, //Отключать и удалять сниппеты.
    'delete_template' => 1, //Отключать и удалять шаблоны.
    'delete_tv' => 1, //Отключать и удалять дополнительные поля (TV).
    'delete_user' => 1, //Отключать и удалять пользователей.
    'directory_chmod' => 1, //Изменять права доступа (chmod) к каталогам.
    'directory_create' => 1, //Создавать каталоги в файловой системе.
    'directory_list' => 1, //Получать список подкаталогов для каталога в файловой системе.
    'directory_remove' => 1, //Удалять каталоги в файловой системе.
    'directory_update' => 1, //Переименовывать каталоги в файловой системе.
    'edit_category' => 1, //Редактировать категории.
    'edit_chunk' => 1, //Редактировать чанки.
    'edit_context' => 1, //Редактировать контексты.
    'edit_document' => 1, //Редактировать ресурсы.
    'edit_locked' => 1, //Позволяет пользователю править заблокированные ресурсы.
    'edit_plugin' => 1, //Редактировать плагины.
    'edit_propertyset' => 1, //Редактировать наборы параметров.
    'edit_role' => 1, //Редактировать роли.
    'edit_snippet' => 1, //Редактировать сниппеты.
    'edit_template' => 1, //Редактировать шаблоны.
    'edit_tv' => 1, //Редактировать дополнительные поля.
    'edit_user' => 1, //Редактировать пользователей.
    'element_tree' => 1, //Возможность просмотра дерева элементов в левой навигационной панели.
    'empty_cache' => 1, //Очищать кэш сайта.
    'error_log_erase' => 1, //Очищать журнал ошибок.
    'error_log_view' => 1, //Видеть журнал ошибок.
    'export_static' => 1, //Экспортировать сайт в статический HTML.
    'file_create' => 1, //Создавать файлы.
    'file_list' => 1, //Смотреть список файлов в определенном каталоге.
    'file_manager' => 1, //Использовать диспетчер файлов.
    'file_remove' => 1, //Удалять файлы.
    'file_tree' => 1, //Видеть дерево файлов в левой навигационной панели.
    'file_update' => 1, //Изменять файлы.
    'file_upload' => 1, //Загружать файлы в папку.
    'file_view' => 1, //Просматривать содержимое файла.
    'flush_sessions' => 1, //Сбрасывать все сессии сайта.
    'frames' => 1, //Использовать бэкэнд MODX.
    'help' => 1, //Смотреть страницу «Помощь».
    'home' => 1, //Смотреть страницу приветствия.
    'import_static' => 1, //Смотреть и использовать страницы импорта.
    'languages' => 1, //Смотреть и редактировать словари.
    'lexicons' => 1, //Смотреть и редактировать «Управление словарями».
    'list' => 1, //Возможность «list» любого объекта. «List» означает получить колекцию объектов.
    'load' => 1, //Возможность «загружать» объекты, или быть в состоянии вернуть их как экземпляр объекта вообще.
    'logout' => 1, //Возможность выходить как пользователь.
    'logs' => 1, //Видеть журналы, такие как журнал ошибок или журнал системы управления.
    'menus' => 1, //Редактировать или сохранять пункты верхнего меню.
    'menu_reports' => 1, //Показывать в верхнем меню пункт «Отчёты».
    'menu_security' => 1, //Показывать в верхнем меню пункт «Безопасность».
    'menu_site' => 1, //Показывать в верхнем меню пункт «Сайт».
    'menu_support' => 1, //Показывать в верхнем меню пункт «Поддержка».
    'menu_system' => 1, //Показывать в верхнем меню пункт «Система».
    'menu_tools' => 1, //Показывать в верхнем меню пункт «Инструменты».
    'menu_user' => 1, //Показывать в верхнем меню пункт «Пользователь».
    'messages' => 1, //Читать и отправлять личные сообщения.
    'namespaces' => 1, //Видеть и редактировать «Пространства имён».
    'new_category' => 1, //Создавать категории.
    'new_chunk' => 1, //Создавать чанки.
    'new_context' => 1, //Создавать контексты.
    'new_document' => 1, //Создавать ресурсы.
    'new_document_in_root' => 1, //Создавать ресурсы в корне.
    'new_plugin' => 1, //Создавать плагины.
    'new_propertyset' => 1, //Создавать наборы параметров.
    'new_role' => 1, //Создавать роли.
    'new_snippet' => 1, //Создавать сниппеты.
    'new_static_resource' => 1, //Создавать новые статичные ресурсы.
    'new_symlink' => 1, //Создавать новые символические ссылки.
    'new_template' => 1, //Создавать шаблоны.
    'new_tv' => 1, //Создавать дополнительные поля.
    'new_user' => 1, //Создавать пользователей.
    'new_weblink' => 1, //Создавать новые веб-ссылки.
    'packages' => 1, //Использовать пакеты в системе управления пакетами.
    'policy_delete' => 1, //Удалять политики доступа.
    'policy_edit' => 1, //Редактировать политики доступа.
    'policy_new' => 1, //Создавать новые политики доступа.
    'policy_save' => 1, //Сохранять политики доступа.
    'policy_template_delete' => 1, //Удалять шаблоны политик доступа.
    'policy_template_edit' => 1, //Редактировать шаблоны политик доступа.
    'policy_template_new' => 1, //Создавать шаблоны политик доступа.
    'policy_template_save' => 1, //Сохранять шаблоны политик доступа.
    'policy_template_view' => 1, //Просматривать шаблоны политик доступа.
    'policy_view' => 1, //Просматривать политики доступа.
    'property_sets' => 1, //Смотреть и изменять параметры и наборы параметров.
    'providers' => 1, //Смотреть и изменять поставщиков пакетов.
    'publish_document' => 1, //Публиковать или отменять публикацию ресурсов
    'purge_deleted' => 1, //Очищать корзину.
    'remove' => 1, //Возможность «удалять» объекты.
    'remove_locks' => 1, //Удалять все блокировки на сайте.
    'resourcegroup_delete' => 1, //Удалять группы ресурсов.
    'resourcegroup_edit' => 1, //Редактировать группы ресурсов.
    'resourcegroup_new' => 1, //Создавать новые группы ресурсов.
    'resourcegroup_resource_edit' => 1, //Редактировать ресурсы в группе ресурсов.
    'resourcegroup_resource_list' => 1, //Просматривать ресурсы в группе ресурсов.
    'resourcegroup_save' => 1, //Сохранять группы ресурсов.
    'resourcegroup_view' => 1, //Просматривать группы ресурсов.
    'resource_duplicate' => 1, //Создавать копию ресурса.
    'resource_quick_create' => 1, //Использовать «Быстро создать ресурс» в контекстном меню.
    'resource_quick_update' => 1, //Использовать «Быстро обновить ресурс» в контекстном меню.
    'resource_tree' => 1, //Смотреть дерево ресурсов в левой навигационной панели.
    'save' => 1, //Возможность «сохранять» объекты.
    'save_category' => 1, //Сохранять категории.
    'save_chunk' => 1, //Сохранять чанки.
    'save_context' => 1, //Сохранять контексты.
    'save_document' => 1, //Сохранять ресурсы.
    'save_plugin' => 1, //Сохранять плагины.
    'save_propertyset' => 1, //Сохранять наборы параметров.
    'save_role' => 1, //Сохранять роли.
    'save_snippet' => 1, //Сохранять сниппеты.
    'save_template' => 1, //Сохранение шаблоны.
    'save_tv' => 1, //Сохранять TV.
    'save_user' => 1, //Сохранять пользователей.
    'search' => 1, //Использовать страницу «Поиск».
    'settings' => 1, //Смотреть и редактировать системные настройки.
    'sources' => 1, //Управлять источниками файлов и типами источников файлов.
    'source_delete' => 1, //Удалять источник файлов.
    'source_edit' => 1, //Редактировать источник файлов.
    'source_save' => 1, //Создавать и сохранять источник файлов.
    'source_view' => 1, //Видеть источник файлов.
    'steal_locks' => 1, //«Перехватывать» блокировки ресурса, перехватывая управление.
    'tree_show_element_ids' => 1, //Показывать идентификатор в дерево элементов.
    'tree_show_resource_ids' => 1, //Показывать идентификатор в дереве ресурсов.
    'undelete_document' => 1, //Возможность отменять удаление ресурсов.
    'unlock_element_properties' => 1, //Изменять параметры по умолчанию для любого элемента.
    'unpublish_document' => 1, //Отменять публикацию ресурсов.
    'usergroup_delete' => 1, //Удалять группы пользователей.
    'usergroup_edit' => 1, //Редактировать группы пользователей.
    'usergroup_new' => 1, //Создавать новые группы пользователей.
    'usergroup_save' => 1, //Сохранять группы пользователей.
    'usergroup_user_edit' => 1, //Редактировать ресурсы в группе пользователей.
    'usergroup_user_list' => 1, //Видеть список пользователей в группе пользователей.
    'usergroup_view' => 1, //Просматривать группы пользователей.
    'view' => 1, //Возможность «просмотра» объектов.
    'view_category' => 1, //Просматривать категории.
    'view_chunk' => 1, //Просматривать чанки.
    'view_context' => 1, //Просматривать контексты.
    'view_document' => 1, //Просматривать ресурсы.
    'view_element' => 1, //Получать список элементов или классов элементов.
    'view_eventlog' => 1, //Просматривать журнал событий.
    'view_offline' => 1, //Просматривать сайт, если он находится режиме офлайна.
    'view_plugin' => 1, //Просматривать плагины.
    'view_propertyset' => 1, //Просмотр наборов параметров.
    'view_role' => 1, //Просматривать роли.
    'view_snippet' => 1, //Просматривать сниппеты.
    'view_sysinfo' => 1, //Просматривать страницу информации о системе.
    'view_template' => 1, //Просматривать шаблоны.
    'view_tv' => 1, //Просматривать TV.
    'view_unpublished' => 1, //Просматривать неопубликованные ресурсы.
    'view_user' => 1, //Просматривать пользователей.
    'workspaces' => 1, //Использовать управление пакетами.
);