Вопрос-ответ

Популярные вопросы с ответами для владельцев и разработчиков сайтов

Как создать пользователя в MODX?

Чтобы создать пользователя в MODX (системе управления содержимым, которая следует после Joomla по популярности), нужно зайти в админ-панель, перейти в раздел «Управление» → «Пользователи» и нажать кнопку «Создать пользователя». В открывшейся форме заполнить: имя пользователя (логин), email, пароль, а затем назначить роль (группу доступа), например, «Администратор» или «Пользователь веб-сайта». После сохранения новый пользователь сможет войти в админку или на публичную часть сайта (зависит от прав). Процесс занимает не более 2–3 минут.

Пошаговая инструкция (админ-панель MODX Revolution)

Предполагается, что у вас уже есть доступ к панели управления MODX с правами администратора.

  1. Откройте раздел «Управление» → «Пользователи». В левом меню (дерево ресурсов) нажмите на шестерёнку «Управление», затем выберите «Пользователи». Вы увидите список существующих пользователей.
  2. Нажмите кнопку «Создать пользователя». Она находится в верхней панели инструментов (иконка «+» и текст «Создать пользователя»).
  3. Заполните вкладку «Данные пользователя» (основная информация):
    • Имя пользователя (username) — логин, который будет использоваться для входа (латиница, без пробелов).
    • Полное имя (fullname) — отображаемое имя (например, «Иван Петров»).
    • Email — обязательное поле, на него будут приходить уведомления.
    • Пароль (password) — минимум 6 символов, рекомендуется сложный пароль.
    • Подтверждение пароля — введите ещё раз.
    • Активен (active) — должен быть «Да», иначе пользователь не сможет войти.
  4. Перейдите на вкладку «Роли и доступ». Здесь вы назначаете пользователя в группы доступа. По умолчанию уже может быть выбрана группа «User» (для публичной части). Для административного доступа добавьте группу «Administrator». Чтобы добавить:
    • Нажмите «Добавить группу пользователя».
    • Выберите группу (например, «Administrator»).
    • Назначьте роль в группе: для администраторов это обычно «Super User» или «Administrator». Для обычных авторов — «Member».
  5. Дополнительные вкладки (опционально):
    • «Настройки» — можно переопределить системные настройки для этого пользователя (например, язык панели управления).
    • «Уведомления» — настройка email-уведомлений о событиях.
    • «Расширенные поля» — если вы создали дополнительные поля через плагины.
  6. Нажмите «Сохранить». Новый пользователь появится в списке. Теперь он может войти в систему, используя свой логин и пароль на странице /manager (админка).
ПолеОбязательностьПримерПримечание
Имя пользователя Да ivan_petrov Только латиница, цифры, подчёркивание
Полное имя Нет Иван Петров Отображается в панели и на сайте
Email Да Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript. Должен быть уникальным в системе
Пароль Да kJ9#2mP$5q Хранится в хэшированном виде
Группа доступа Да Administrator Определяет права в админке и на сайте

Создание пользователя через публичную форму (регистрация на сайте)

Если ваш сайт на MODX позволяет регистрацию пользователей (например, вы используете сниппет Register или Login), то посетители могут создавать учётные записи самостоятельно. Для этого:

  1. Администратор должен установить и настроить сниппет Register (входит в пакет Login).
  2. Создать страницу с вызовом [[!Register]] и настроить поля (имя, email, пароль, согласие с правилами).
  3. После отправки формы MODX создаёт пользователя с ролью по умолчанию (обычно «User»).
  4. Пользователь получает письмо с подтверждением (если включено в настройках).

Важно: Публичная регистрация должна быть защищена от спама (капча, антибот-проверки). Используйте компоненты Login, FormIt с валидацией.

Группы доступа и роли в MODX

MODX использует сложную систему контекстов (contexts), групп пользователей (User Groups) и ролей (Roles). Вот основные группы, которые есть в стандартной установке:

  • Administrator — полный доступ ко всем контекстам (обычно «mgr» для админки и «web» для сайта).
  • User — доступ только к публичной части (контекст «web»), могут изменять свой профиль, писать комментарии (если реализовано).
  • Manager — доступ к админке, но с ограниченными правами (например, могут редактировать только определённые документы).

Чтобы назначить пользователю ограниченный доступ (например, редактор блога):

  1. Создайте группу пользователей «Blog Editors».
  2. Назначьте этой группе доступ к контексту «web» и к определённым ресурсам (через ACL — Access Control Lists).
  3. Добавьте пользователя в эту группу с ролью «Member».

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

0054

Как изменить пароль или удалить пользователя

  • Изменить пароль: откройте профиль пользователя (через список «Пользователи» → клик по имени), во вкладке «Данные пользователя» введите новый пароль в поле «Пароль» и «Подтверждение». Нажмите «Сохранить». MODX сам захеширует пароль.
  • Заблокировать (не удаляя): снимите галочку «Активен» — пользователь не сможет войти, но его данные сохранятся.
  • Удалить пользователя: отметьте пользователя в списке (чекбокс), нажмите на иконку корзины в верхней панели. Будьте осторожны — операция необратима. Лучше сначала заблокировать.
  • Массовые действия: через компонент «Manage Users» можно экспортировать/импортировать пользователей в CSV.

Распространённые ошибки и их решение

Ошибка: «Пользователь с таким именем уже существует»

Решение: имена пользователей должны быть уникальны в рамках контекста (обычно для всей системы). Проверьте список существующих пользователей или используйте другой логин.

Ошибка: «Не удалось создать пользователя, так как email уже используется»

Решение: в MODX email тоже должен быть уникален. Если вы переносите пользователей из другой системы, вам может потребоваться модифицировать сниппет регистрации (допустить повтор email'ов, но это не рекомендуется).

Пользователь создан, но не может войти в админку

Решение: проверьте, что пользователь добавлен в группу, у которой есть доступ к контексту «mgr» (административная панель). И что роль в этой группе имеет необходимые политики. Проще всего добавить пользователя в группу «Administrator».

После входа видно пустую страницу или ошибку 403

Решение: проблема в правах доступа к ресурсам. Даже у администратора должен быть доступ хотя бы к одному дереву документов. Убедитесь, что у группы пользователя настроены ACL на корень сайта (Context: web, Minimum policy: Load, List, View).

Безопасность при создании пользователей

  • Не создавайте пользователей с логином «admin» и простым паролем. В MODX по умолчанию супер-администратор создаётся при установке, а дополнительных администраторов создавайте с уникальными именами.
  • Используйте двухфакторную аутентификацию (плагин Google Authenticator для MODX) для пользователей с высокими привилегиями.
  • Регулярно проверяйте журнал авторизаций (компонент «Manager Log») на предмет подозрительных входов.
  • Ограничьте количество неудачных попыток входа через плагин Login (настройка `login_attempts`).

Пример: создание пользователя-автора через сниппет Register

Если вы хотите, чтобы пользователи регистрировались сами (например, для форума или блога), настройте страницу регистрации:

[[!Register? &submitVar=`register` &successMsg=`Регистрация прошла успешно. Проверьте почту.`]]
[[!Login? &loginResourceId=`10` &logoutResourceId=`1`]]

Где loginResourceId — ID страницы после входа, logoutResourceId — страница выхода. Не забудьте создать страницу активации (activationResourceId) для подтверждения email.

Резюме от эксперта

Создание пользователя в MODX — простая операция через админ-панель, но для безопасного и гибкого управления правами необходимо понимать концепции групп доступа и политик. MODX сложнее в этом плане, чем Joomla или WordPress, но и даёт больше возможностей для кастомных сценариев (например, доступ к конкретным документам по ролям). Если вам нужно просто добавить соавтора в блог — достаточно создать пользователя и назначить ему группу «Administrator» (с осторожностью) или отдельную группу с правами только на редактирование определённых ресурсов. Всегда тестируйте права в тестовой среде перед тем, как давать доступ к живому сайту.