Rbac default permissions

Материал из World of WarCraft Developers Wiki
Перейти к навигации Перейти к поиску

Таблица rbac_default_permissions

Таблица rbac_default_permissions из базы данных auth задаёт “разрешения по умолчанию” для разных уровней доступа (security level). Эти разрешения автоматически считаются назначенными для аккаунтов соответствующего уровня. Также возможно ограничение по реалму через `realmId`.

Структура таблицы

Field Type Attributes Key Null Default Extra
secId int UNSIGNED PRIMARY (secId, permissionId, realmId) NO COMMENT 'Security Level id'
permissionId int UNSIGNED PRIMARY (secId, permissionId, realmId), FOREIGN KEY (fk__rbac_default_permissions__rbac_permissions) NO COMMENT 'permission id'
realmId int PRIMARY (secId, permissionId, realmId) NO -1 COMMENT 'Realm Id, -1 means all'

secId

Идентификатор уровня доступа (security level), для которого действует правило “разрешение по умолчанию”. Это не ссылка на отдельную таблицу, а код уровня (используется RBAC-логикой ядра).

Пример: 2

permissionId

ID RBAC-разрешения, которое назначается “по умолчанию” для указанного `secId`. Значение является ссылкой на таблицу rbac_permissions (поле `rbac_permissions.id`).

Пример: 192

realmId

Ограничение действия по реалму.

Value Значение
-1 Разрешение действует на всех реалмах
0 и выше Разрешение действует только на конкретном реалме (ID из таблицы realmlist — поле `realmlist.id`)

Пример: -1