НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
42 of 152 menu

Таблица oc_user_group

Таблица oc_user_group является ключевым элементом системы управления доступом в админ-панели OpenCart. Она определяет группы, к которым могут принадлежать администраторы, и служит основой для назначения прав доступа к различным разделам и функциям.

Поля

Поле Тип данных Описание
user_group_id int Уникальный идентификатор группы пользователей. Автоинкрементное поле.
name varchar(64) Название группы пользователей (например, "Администраторы", "Модераторы", "Редакторы").
permission text Права доступа группы в формате сериализованного PHP-массива. Содержит список контроллеров (разделов админ-панели), к которым есть доступ у данной группы.

Как это работает

При создании нового администратора в системе ему назначается одна или несколько групп из таблицы oc_user_group. Связь между пользователями и группами устанавливается через таблицу oc_user, где поле user_group_id содержит ID группы.

Поле permission хранит сериализованный массив путей к контроллерам админ-панели (например, catalog/product, sale/order). При попытке пользователя получить доступ к определенному разделу система проверяет, есть ли соответствующий контроллер в списке прав его группы.

Группа "Администраторы" (обычно с user_group_id = 1) по умолчанию имеет полный доступ ко всем разделам. Её права обычно содержат запись access и modify для всех контроллеров.

Система прав в OpenCart работает по принципу "все, что не разрешено - запрещено". Если контроллер не указан в поле permission группы, пользователи этой группы не смогут получить к нему доступ.

Пример SQL-запроса

Посмотреть список всех групп пользователей и их прав можно следующим запросом:

SELECT user_group_id, name, permission FROM oc_user_group;

Создание новой группы пользователей с ограниченными правами:

INSERT INTO oc_user_group (name, permission) VALUES ('Редакторы товаров', 'a:2:{s:6:\"access\";a:2:{i:0;s:16:\"catalog/product\";i:1;s:16:\"catalog/category\";}s:6:\"modify\";a:2:{i:0;s:16:\"catalog/product\";i:1;s:16:\"catalog/category\";}}');

Смотрите также

  • таблицу oc_user,
    которая хранит учетные записи администраторов
  • таблицу oc_customer_group,
    которая хранит группы покупателей
  • таблицу oc_api,
    которая хранит ключи API для доступа к системе
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить