Николай Ланец
24 мар. 2015 г., 19:38

Минимальные права на доступ в админ-панель

Когда я настраиваю права для различных групп пользователей, я не даю права на доступ в админку отдельным группам пользователей (имеется ввиду более чем одной), а создаю одну единственную группу с такими правами, например «С доступом в админ-панель». Смысл ее в том, чтобы дать минимальные права для доступа в админку (право ее загрузить, увидеть главную страницу админки (да-да, на это тоже будут права, а иначе в админку попадет, но получит сообщение Ошибка доступа), право разлогиниваться (и на это нужны права) и права редактировать свой профиль (хотя бы чтобы мог имя и пароль сменить (не login, а fullname))). И вот даже эта настройка прав иногда отнимает время. Вот выкладываю готовую настройку политик безопасности. Сохраните этот код в виде XML-файла и импортируйте в управлении политиками безопасности. ?
Далее создаете группу пользователей (например «С доступом в админ-панель») и этой группе доступов даете в настройках безопасности доступ к контексту mgr с минимальной ролью member. ?
И не надо придумывать помимо политик безопасности еще и роли. Двух ролей Super User и Member вполне достаточно. Роли нужны только для тех случаев когда в одной группе пользователей находятся пользователи с разными правами, но это крайне не рекомендую делать ибо сильно усложняет и без того сложный механизм доступов.
Итог: захотели дать доступ в админку (а не лишним будет отметить что это крайне не рекомендуется делать кроме как тем, кто имеет непосредственное отношение к сайту) — добавили пользователя с ролью Member в эту группу и все. Пользователь сможет зайти в админку. Потребовалось больше дать прав? Создаете новую группу и настраиваете этой группе права.
Зачем такие сложности? Ну хотя бы потому, что многие действия можно дать выполнять и через фронт. К примеру у вас новостной портал и люди могут публиковать различные новости. Так вот, настройки права публикации новостей (создание документов, смена статусов, публикация и т.п.) — это один момент, единый для всех пользователей, публикующих новости. Но кто-то может быть сотрудником редакции и имеет доступ в админку (чтобы иметь, к примеру, более расширенный редактор), а кто-то просто сторонний автор, который просто публикует статью через фронт. Так вот чтобы четко понимать кто имеет права доступа в админку, а кто нет, лучше держать для этого специальную группу.
Можно ли дать доступ только к одному компоненту FormSave? Мне кажется не получится.
Что есть «доступ только к одному компоненту FormSave»? Вы имеете ввиду доступ к странице компонента в админке? В редактировании действий меню прописываете свои права и создаете настройку с этими правами.
?
Спасибо! Получилось. Только пункт меню пришлось вынести в topnav и Название пункта прописать туда, где иконка должна быть.
Ну, дальше это вы уже сами рулите как хотите. Кстати, обычно имеет смысл давать права components, что позволяет видеть меню «Приложения», просто всем внутренним пунктам, которые не должен видеть кто попало, устанавливаются права. Если ни одного приложения не будет доступно для просмотра, этот пункт меню не будет выводиться.
Добрый день, Николай.
Сразу извинюсь, что не по теме. Смотрю Ваше видео, в котором показано, как работать с modxsmarty. Там говорится, что полезные процессоры присутствуют в пакете shopmodx. Хотелось спросить, могу ли я просто папку «processors» скопировать к себе на сайт? Так будут они работать? Не хотелось бы устанавливать весь пакет ради процессоров. БлагоДарю.
Добрый день. Это частично устаревшее видео. Процессоры давно уже перенесены в модуль modxSite. Сам модуль за собой еще потянет пакеты phpTemplates, Console и modxSmarty (может еще какую мелочь), но они во-первых, чаще всего всегда нужны, а во-вторых, даже если не понадобятся, особо систему не захламят. В modxSite актуальные getdata-процессоры.
Спасибо, Николай. Всё понял. Не предвещается никаких новых интересных видеороликов или статей? Очень классно объясняете, от души читаю Ваши статьи. Особенно понравилась про расширение системных таблиц. БлагоДарю за Вашу деятельность!
Пожалуйста!
Да вот недавно совсем опять обучение было, а я забыл включить запись :( Саму программу включил, а запись нет. А так, когда обучение заказывают, стараюсь записывать.

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