Core/RBAC: Simplification part 1. Nobody needs different permissions …

…for each type of .go command.
This commit is contained in:
Aokromes
2018-09-09 13:19:23 +02:00
parent 3e024d1eb9
commit 88e1b344cb
5 changed files with 28 additions and 44 deletions

View File

@@ -1036,7 +1036,6 @@ INSERT INTO `rbac_linked_permissions` VALUES
(198,317),
(198,318),
(198,855),
(198,874),
(198,367),
(198,368),
(198,369),
@@ -1046,15 +1045,6 @@ INSERT INTO `rbac_linked_permissions` VALUES
(198,374),
(198,376),
(198,377),
(198,378),
(198,379),
(198,380),
(198,381),
(198,382),
(198,383),
(198,384),
(198,385),
(198,386),
(198,408),
(198,409),
(198,410),
@@ -1395,15 +1385,6 @@ INSERT INTO `rbac_permissions` VALUES
(375,'Command: gm list'),
(376,'Command: gm visible'),
(377,'Command: go'),
(378,'Command: go creature'),
(379,'Command: go graveyard'),
(380,'Command: go grid'),
(381,'Command: go object'),
(382,'Command: go taxinode'),
(383,'Command: go ticket'),
(384,'Command: go trigger'),
(385,'Command: go xyz'),
(386,'Command: go zonexy'),
(387,'Command: gobject'),
(388,'Command: gobject activate'),
(389,'Command: gobject add'),
@@ -1832,8 +1813,7 @@ INSERT INTO `rbac_permissions` VALUES
(865,'Command: npc showloot'),
(866,'Command: list spawnpoints'),
(867,'Command: reload quest_greeting_locale'),
(872,'Command: server debug'),
(874,'Command: go instance');
(872,'Command: server debug');
/*!40000 ALTER TABLE `rbac_permissions` ENABLE KEYS */;
UNLOCK TABLES;
@@ -1979,7 +1959,8 @@ INSERT INTO `updates` VALUES
('2018_08_15_00_auth.sql','22DC7AA7A1D2B04C62B2EEBFF4562DDDC412B456','ARCHIVED','2018-08-15 01:40:04',0),
('2018_08_16_00_auth.sql','FF00C2A63E8F1E43442C083F2682E100FB39AA5C','ARCHIVED','2018-08-16 01:40:04',0),
('2018_08_17_00_auth.sql','0C9921DCEF92D0C66524299A2F0B86EBB1B7020E','ARCHIVED','2018-08-17 01:40:04',0),
('2018_09_02_00_auth_from_335_was_2018_08_30_00_auth.sql','7E6ABD3FF59FC6CC82B227CE074E8E91DE4D1DB2','ARCHIVED','2018-08-17 01:40:04',0);
('2018_09_02_00_auth_from_335_was_2018_08_30_00_auth.sql','7E6ABD3FF59FC6CC82B227CE074E8E91DE4D1DB2','ARCHIVED','2018-08-17 01:40:04',0),
('2018_09_09_00_auth_from_335_was_2018_09_06_00_auth.sql','309D21E0DF82ED8921F77EAFDE741F38AC32BB13','ARCHIVED','2018-09-06 00:00:00',0);
/*!40000 ALTER TABLE `updates` ENABLE KEYS */;
UNLOCK TABLES;

View File

@@ -0,0 +1,3 @@
-- rbac simplify
DELETE FROM `rbac_linked_permissions` WHERE `linkedid` IN (378,379,380,381,382,383,384,385,386,852,874);
DELETE FROM `rbac_permissions` WHERE `id` IN (378,379,380,381,382,383,384,385,386,852,874);

View File

@@ -0,0 +1,2 @@
--
UPDATE `command` SET `permission`=377 WHERE (`permission` BETWEEN 378 AND 386) OR `permission` IN (852,874);

View File

@@ -283,15 +283,7 @@ enum RBACPermissions
RBAC_PERM_COMMAND_GM_LIST = 375,
RBAC_PERM_COMMAND_GM_VISIBLE = 376,
RBAC_PERM_COMMAND_GO = 377,
RBAC_PERM_COMMAND_GO_CREATURE = 378,
RBAC_PERM_COMMAND_GO_GRAVEYARD = 379,
RBAC_PERM_COMMAND_GO_GRID = 380,
RBAC_PERM_COMMAND_GO_OBJECT = 381,
RBAC_PERM_COMMAND_GO_TAXINODE = 382,
RBAC_PERM_COMMAND_GO_TICKET = 383,
RBAC_PERM_COMMAND_GO_TRIGGER = 384,
RBAC_PERM_COMMAND_GO_XYZ = 385,
RBAC_PERM_COMMAND_GO_ZONEXY = 386,
// unused 378-386
RBAC_PERM_COMMAND_GOBJECT = 387,
RBAC_PERM_COMMAND_GOBJECT_ACTIVATE = 388,
RBAC_PERM_COMMAND_GOBJECT_ADD = 389,
@@ -750,7 +742,14 @@ enum RBACPermissions
RBAC_PERM_COMMAND_RELOAD_CHARACTER_TEMPLATE = 842, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_RELOAD_QUEST_GREETING = 843,
RBAC_PERM_COMMAND_DEBUG_SEND_PLAYSCENE = 844, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_GO_OFFSET = 845,
RBAC_PERM_COMMAND_SCENE_DEBUG = 845, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_SCENE_PLAY = 846, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_SCENE_PLAY_PACKAGE = 847, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_SCENE_CANCEL = 848, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_LIST_SCENES = 849, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_RELOAD_SCENE_TEMPLATE = 850, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_RELOAD_AREATRIGGER_TEMPLATE = 851, // not on 3.3.5a or 4.3.4
// unused 852
RBAC_PERM_COMMAND_RELOAD_CONVERSATION_TEMPLATE = 853, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_DEBUG_CONVERSATION = 854, // not on 3.3.5a or 4.3.4
RBAC_PERM_COMMAND_DEBUG_PLAY_MUSIC = 855,
@@ -772,7 +771,6 @@ enum RBACPermissions
RBAC_PERM_COMMAND_DEBUG_INSTANCESPAWN = 871,
RBAC_PERM_COMMAND_SERVER_DEBUG = 872,
RBAC_PERM_COMMAND_RELOAD_CREATURE_MOVEMENT_OVERRIDE = 873,
RBAC_PERM_COMMAND_GO_INSTANCE = 874,
//
// IF YOU ADD NEW PERMISSIONS, ADD THEM IN MASTER BRANCH AS WELL!
//

View File

@@ -45,17 +45,17 @@ public:
{
static std::vector<ChatCommand> goCommandTable =
{
{ "creature", rbac::RBAC_PERM_COMMAND_GO_CREATURE, false, &HandleGoCreatureCommand, "" },
{ "graveyard", rbac::RBAC_PERM_COMMAND_GO_GRAVEYARD, false, &HandleGoGraveyardCommand, "" },
{ "grid", rbac::RBAC_PERM_COMMAND_GO_GRID, false, &HandleGoGridCommand, "" },
{ "object", rbac::RBAC_PERM_COMMAND_GO_OBJECT, false, &HandleGoObjectCommand, "" },
{ "taxinode", rbac::RBAC_PERM_COMMAND_GO_TAXINODE, false, &HandleGoTaxinodeCommand, "" },
{ "trigger", rbac::RBAC_PERM_COMMAND_GO_TRIGGER, false, &HandleGoTriggerCommand, "" },
{ "zonexy", rbac::RBAC_PERM_COMMAND_GO_ZONEXY, false, &HandleGoZoneXYCommand, "" },
{ "xyz", rbac::RBAC_PERM_COMMAND_GO_XYZ, false, &HandleGoXYZCommand, "" },
{ "ticket", rbac::RBAC_PERM_COMMAND_GO_TICKET, false, &HandleGoTicketCommand, "" },
{ "offset", rbac::RBAC_PERM_COMMAND_GO_OFFSET, false, &HandleGoOffsetCommand, "" },
{ "instance", rbac::RBAC_PERM_COMMAND_GO_INSTANCE, false, &HandleGoInstanceCommand, "" }
{ "creature", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoCreatureCommand, "" },
{ "graveyard", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoGraveyardCommand, "" },
{ "grid", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoGridCommand, "" },
{ "object", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoObjectCommand, "" },
{ "taxinode", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoTaxinodeCommand, "" },
{ "trigger", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoTriggerCommand, "" },
{ "zonexy", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoZoneXYCommand, "" },
{ "xyz", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoXYZCommand, "" },
{ "ticket", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoTicketCommand, "" },
{ "offset", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoOffsetCommand, "" },
{ "instance", rbac::RBAC_PERM_COMMAND_GO, false, &HandleGoInstanceCommand, "" }
};
static std::vector<ChatCommand> commandTable =