mirror of
https://github.com/liyunfan1223/azerothcore-wotlk.git
synced 2026-07-28 18:47:40 +00:00
chore(Script/Commands): Update last commands to RBAC (#26607)
This commit is contained in:
33
data/sql/updates/pending_db_auth/rev_1784028632835376200.sql
Normal file
33
data/sql/updates/pending_db_auth/rev_1784028632835376200.sql
Normal file
@@ -0,0 +1,33 @@
|
||||
-- RBAC permissions for core commands migrated off deprecated GM security levels.
|
||||
DELETE FROM `rbac_permissions` WHERE `id` BETWEEN 926 AND 938;
|
||||
INSERT INTO `rbac_permissions` (`id`, `name`) VALUES
|
||||
(926, 'Command: autobroadcast list'),
|
||||
(927, 'Command: autobroadcast add'),
|
||||
(928, 'Command: autobroadcast locale'),
|
||||
(929, 'Command: autobroadcast remove'),
|
||||
(930, 'Command: mail list'),
|
||||
(931, 'Command: mail return'),
|
||||
(932, 'Command: npc load'),
|
||||
(933, 'Command: pool info'),
|
||||
(934, 'Command: pool lookup'),
|
||||
(935, 'Command: spellinfo attributes'),
|
||||
(936, 'Command: spellinfo effects'),
|
||||
(937, 'Command: spellinfo targets'),
|
||||
(938, 'Command: spellinfo all');
|
||||
|
||||
-- Link each command permission to its role: 196 = Administrator role, 197 = Gamemaster role.
|
||||
DELETE FROM `rbac_linked_permissions` WHERE `linkedId` BETWEEN 926 AND 938;
|
||||
INSERT INTO `rbac_linked_permissions` (`id`, `linkedId`) VALUES
|
||||
(197, 926),
|
||||
(196, 927),
|
||||
(196, 928),
|
||||
(196, 929),
|
||||
(197, 930),
|
||||
(197, 931),
|
||||
(196, 932),
|
||||
(197, 933),
|
||||
(197, 934),
|
||||
(197, 935),
|
||||
(197, 936),
|
||||
(197, 937),
|
||||
(197, 938);
|
||||
@@ -687,6 +687,19 @@ enum RBACPermissions
|
||||
RBAC_PERM_COMMAND_CHATFILTER_LIST = 923,
|
||||
RBAC_PERM_COMMAND_CHATFILTER_ADD = 924,
|
||||
RBAC_PERM_COMMAND_CHATFILTER_REMOVE = 925,
|
||||
RBAC_PERM_COMMAND_AUTOBROADCAST_LIST = 926,
|
||||
RBAC_PERM_COMMAND_AUTOBROADCAST_ADD = 927,
|
||||
RBAC_PERM_COMMAND_AUTOBROADCAST_LOCALE = 928,
|
||||
RBAC_PERM_COMMAND_AUTOBROADCAST_REMOVE = 929,
|
||||
RBAC_PERM_COMMAND_MAIL_LIST = 930,
|
||||
RBAC_PERM_COMMAND_MAIL_RETURN = 931,
|
||||
RBAC_PERM_COMMAND_NPC_LOAD = 932,
|
||||
RBAC_PERM_COMMAND_POOL_INFO = 933,
|
||||
RBAC_PERM_COMMAND_POOL_LOOKUP = 934,
|
||||
RBAC_PERM_COMMAND_SPELLINFO_ATTRIBUTES = 935,
|
||||
RBAC_PERM_COMMAND_SPELLINFO_EFFECTS = 936,
|
||||
RBAC_PERM_COMMAND_SPELLINFO_TARGETS = 937,
|
||||
RBAC_PERM_COMMAND_SPELLINFO_ALL = 938,
|
||||
// custom permissions 1000+
|
||||
RBAC_PERM_MAX
|
||||
};
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
#include "CommandScript.h"
|
||||
#include "Config.h"
|
||||
#include "Language.h"
|
||||
#include "RBAC.h"
|
||||
|
||||
using namespace Acore::ChatCommands;
|
||||
|
||||
@@ -32,10 +33,10 @@ public:
|
||||
{
|
||||
static ChatCommandTable autobroadcastCommandTable =
|
||||
{
|
||||
{ "list", HandleAutobroadcastListCommand, SEC_GAMEMASTER, Console::Yes },
|
||||
{ "add", HandleAutobroadcastAddCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||
{ "locale", HandleAutobroadcastLocaleCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||
{ "remove", HandleAutobroadcastRemoveCommand, SEC_ADMINISTRATOR, Console::Yes }
|
||||
{ "list", HandleAutobroadcastListCommand, rbac::RBAC_PERM_COMMAND_AUTOBROADCAST_LIST, Console::Yes },
|
||||
{ "add", HandleAutobroadcastAddCommand, rbac::RBAC_PERM_COMMAND_AUTOBROADCAST_ADD, Console::Yes },
|
||||
{ "locale", HandleAutobroadcastLocaleCommand, rbac::RBAC_PERM_COMMAND_AUTOBROADCAST_LOCALE, Console::Yes },
|
||||
{ "remove", HandleAutobroadcastRemoveCommand, rbac::RBAC_PERM_COMMAND_AUTOBROADCAST_REMOVE, Console::Yes }
|
||||
};
|
||||
|
||||
static ChatCommandTable commandTable =
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
#include "ObjectAccessor.h"
|
||||
#include "ObjectMgr.h"
|
||||
#include "Player.h"
|
||||
#include "RBAC.h"
|
||||
#include "ScriptMgr.h"
|
||||
#include "Timer.h"
|
||||
|
||||
@@ -40,8 +41,8 @@ public:
|
||||
{
|
||||
static ChatCommandTable mailCommandTable =
|
||||
{
|
||||
{ "list", HandleMailListCommand, SEC_GAMEMASTER, Console::Yes },
|
||||
{ "return", HandleMailReturnCommand, SEC_GAMEMASTER, Console::Yes }
|
||||
{ "list", HandleMailListCommand, rbac::RBAC_PERM_COMMAND_MAIL_LIST, Console::Yes },
|
||||
{ "return", HandleMailReturnCommand, rbac::RBAC_PERM_COMMAND_MAIL_RETURN, Console::Yes }
|
||||
};
|
||||
|
||||
static ChatCommandTable commandTable =
|
||||
|
||||
@@ -200,11 +200,11 @@ public:
|
||||
{ "add", npcAddCommandTable },
|
||||
{ "delete", npcDeleteCommandTable },
|
||||
{ "follow", npcFollowCommandTable },
|
||||
{ "load", HandleNpcLoadCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||
{ "load", HandleNpcLoadCommand, rbac::RBAC_PERM_COMMAND_NPC_LOAD, Console::Yes },
|
||||
{ "set", npcSetCommandTable },
|
||||
{ "showloot", HandleNpcShowLootCommand, rbac::RBAC_PERM_COMMAND_NPC_SHOWLOOT, Console::No },
|
||||
{ "spawngroup", HandleNpcSpawnGroupCommand, SEC_ADMINISTRATOR, Console::No },
|
||||
{ "despawngroup", HandleNpcDespawnGroupCommand, SEC_ADMINISTRATOR, Console::No }
|
||||
{ "showloot", HandleNpcShowLootCommand, rbac::RBAC_PERM_COMMAND_NPC_SHOWLOOT, Console::No },
|
||||
{ "spawngroup", HandleNpcSpawnGroupCommand, rbac::RBAC_PERM_COMMAND_NPC_SPAWNGROUP, Console::No },
|
||||
{ "despawngroup", HandleNpcDespawnGroupCommand, rbac::RBAC_PERM_COMMAND_NPC_DESPAWNGROUP, Console::No }
|
||||
};
|
||||
static ChatCommandTable commandTable =
|
||||
{
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "ObjectMgr.h"
|
||||
#include "Player.h"
|
||||
#include "PoolMgr.h"
|
||||
#include "RBAC.h"
|
||||
|
||||
using namespace Acore::ChatCommands;
|
||||
|
||||
@@ -37,8 +38,8 @@ public:
|
||||
{
|
||||
static ChatCommandTable poolCommandTable =
|
||||
{
|
||||
{ "info", HandlePoolInfoCommand, SEC_GAMEMASTER, Console::Yes },
|
||||
{ "lookup", HandlePoolLookupCommand, SEC_GAMEMASTER, Console::No },
|
||||
{ "info", HandlePoolInfoCommand, rbac::RBAC_PERM_COMMAND_POOL_INFO, Console::Yes },
|
||||
{ "lookup", HandlePoolLookupCommand, rbac::RBAC_PERM_COMMAND_POOL_LOOKUP, Console::No },
|
||||
};
|
||||
static ChatCommandTable commandTable =
|
||||
{
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#include "CommandScript.h"
|
||||
#include "DBCStructure.h"
|
||||
#include "Language.h"
|
||||
#include "RBAC.h"
|
||||
#include "SmartEnum.h"
|
||||
#include "SpellAuraDefines.h"
|
||||
#include "SpellInfo.h"
|
||||
@@ -35,10 +36,10 @@ public:
|
||||
{
|
||||
static ChatCommandTable spellinfoCommandTable =
|
||||
{
|
||||
{ "attributes", HandleSpellInfoAttributesCommand, SEC_GAMEMASTER, Console::Yes },
|
||||
{ "effects", HandleSpellInfoEffectsCommand, SEC_GAMEMASTER, Console::Yes },
|
||||
{ "targets", HandleSpellInfoTargetsCommand, SEC_GAMEMASTER, Console::Yes },
|
||||
{ "all", HandleSpellInfoAllCommand, SEC_GAMEMASTER, Console::Yes }
|
||||
{ "attributes", HandleSpellInfoAttributesCommand, rbac::RBAC_PERM_COMMAND_SPELLINFO_ATTRIBUTES, Console::Yes },
|
||||
{ "effects", HandleSpellInfoEffectsCommand, rbac::RBAC_PERM_COMMAND_SPELLINFO_EFFECTS, Console::Yes },
|
||||
{ "targets", HandleSpellInfoTargetsCommand, rbac::RBAC_PERM_COMMAND_SPELLINFO_TARGETS, Console::Yes },
|
||||
{ "all", HandleSpellInfoAllCommand, rbac::RBAC_PERM_COMMAND_SPELLINFO_ALL, Console::Yes }
|
||||
};
|
||||
|
||||
static ChatCommandTable commandTable =
|
||||
|
||||
Reference in New Issue
Block a user