Account access

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

Таблица account_access

Таблица account_access из базы данных auth хранит уровень доступа (security level) аккаунта на конкретном реалме. Запись задаётся парой (AccountID, RealmID), что позволяет одному аккаунту иметь разные уровни доступа на разных реалмах.

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

Field Type Attributes Key Null Default Extra
AccountID int UNSIGNED PRIMARY (AccountID, RealmID) NO
SecurityLevel tinyint UNSIGNED NO
RealmID int PRIMARY (AccountID, RealmID) NO -1
Comment varchar(255) CHARACTER SET utf8mb4, COLLATE utf8mb4_unicode_ci YES NULL

AccountID

ID аккаунта, для которого задаётся уровень доступа. Фактически это идентификатор учётной записи (обычно соответствует `account.id`).

Пример: 42

SecurityLevel

Уровень доступа аккаунта (чем выше значение — тем больше административных прав). Конкретный смысл уровней зависит от ядра/системы прав, но типовая схема TrinityCore выглядит так:

Value Name Описание
0 SEC_PLAYER Обычный игрок
1 SEC_MODERATOR Модератор
2 SEC_GAMEMASTER Гейммастер (GM)
3 SEC_ADMINISTRATOR Администратор
4 SEC_CONSOLE Уровень для консоли (обычно недоступен обычным аккаунтам)

Пример: 2

RealmID

ID реалма, к которому применяется уровень доступа.

Value Значение
-1 Права применяются ко всем реалмам
0 и выше Права применяются только к конкретному реалму с таким ID

Пример: -1

Comment

Произвольный комментарий к записи (для администрирования/пояснений). Не влияет на работу прав доступа, используется для заметок.

Пример: GM access for events