aboutsummaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorNay <dnpd.dd@gmail.com>2013-09-02 13:25:07 +0100
committerNay <dnpd.dd@gmail.com>2013-09-02 13:25:07 +0100
commit28f9317698aec3eb8480e6682af3c4c65a98707c (patch)
tree331d8499075fe378cbf37bb2d33372e4bbc80a72 /sql
parentf3487aa0e1731728383b3ef33941dd774297c600 (diff)
Core/RBAC: Move cast and characters commands to RBAC (using individual permissions)
Diffstat (limited to 'sql')
-rw-r--r--sql/updates/auth/2013_09_02_16_auth_misc.sql23
-rw-r--r--sql/updates/auth/2013_09_02_17_auth_misc.sql47
-rw-r--r--sql/updates/world/2013_09_02_17_world_command.sql11
-rw-r--r--sql/updates/world/2013_09_02_18_world_command.sql23
4 files changed, 104 insertions, 0 deletions
diff --git a/sql/updates/auth/2013_09_02_16_auth_misc.sql b/sql/updates/auth/2013_09_02_16_auth_misc.sql
new file mode 100644
index 00000000000..5d3a7754e86
--- /dev/null
+++ b/sql/updates/auth/2013_09_02_16_auth_misc.sql
@@ -0,0 +1,23 @@
+/* cs_cast.cpp */
+
+SET @id = 263;
+
+-- Add new permissions
+DELETE FROM `rbac_permissions` WHERE `id` BETWEEN @id AND @id+5;
+INSERT INTO `rbac_permissions` (`id`, `name`) VALUES
+(@id+0, 'cast'),
+(@id+1, 'cast back'),
+(@id+2, 'cast dist'),
+(@id+3, 'cast self'),
+(@id+4, 'cast target'),
+(@id+5, 'cast dest');
+
+-- Add permissions to "corresponding Commands Role"
+DELETE FROM `rbac_role_permissions` WHERE `permissionId` BETWEEN @id AND @id+5;
+INSERT INTO `rbac_role_permissions` (`roleId`, `permissionId`) VALUES
+(4, @id+0),
+(4, @id+1),
+(4, @id+2),
+(4, @id+3),
+(4, @id+4),
+(4, @id+5);
diff --git a/sql/updates/auth/2013_09_02_17_auth_misc.sql b/sql/updates/auth/2013_09_02_17_auth_misc.sql
new file mode 100644
index 00000000000..54087e64c22
--- /dev/null
+++ b/sql/updates/auth/2013_09_02_17_auth_misc.sql
@@ -0,0 +1,47 @@
+/* cs_character.cpp */
+
+SET @id = 273;
+
+-- Add new permissions
+DELETE FROM `rbac_permissions` WHERE `id` BETWEEN @id AND @id+17;
+INSERT INTO `rbac_permissions` (`id`, `name`) VALUES
+(@id+0 , 'character'),
+(@id+1 , 'character customize'),
+(@id+2 , 'character changefaction'),
+(@id+3 , 'character changerace'),
+(@id+4 , 'character deleted'),
+-- (@id+5 , 'character deleted delete'),
+(@id+6 , 'character deleted list'),
+(@id+7 , 'character deleted restore'),
+-- (@id+8 , 'character deleted old'),
+-- (@id+9 , 'character erase'),
+(@id+10, 'character level'),
+(@id+11, 'character rename'),
+(@id+12, 'character reputation'),
+(@id+13, 'character titles'),
+(@id+14, 'levelup'),
+(@id+15, 'pdump'),
+(@id+16, 'pdump load'),
+(@id+17, 'pdump write');
+
+-- Add permissions to "corresponding Commands Role"
+DELETE FROM `rbac_role_permissions` WHERE `permissionId` BETWEEN @id AND @id+17;
+INSERT INTO `rbac_role_permissions` (`roleId`, `permissionId`) VALUES
+(3, @id+0 ),
+(3, @id+1 ),
+(3, @id+2 ),
+(3, @id+3 ),
+(3, @id+4 ),
+-- (c, @id+5 ),
+(4, @id+6 ),
+(4, @id+7 ),
+-- (c, @id+8 ),
+-- (c, @id+9 ),
+(4, @id+10),
+(3, @id+11),
+(3, @id+12),
+(3, @id+13),
+(4, @id+14),
+(4, @id+15),
+(4, @id+16),
+(4, @id+17);
diff --git a/sql/updates/world/2013_09_02_17_world_command.sql b/sql/updates/world/2013_09_02_17_world_command.sql
new file mode 100644
index 00000000000..1bbb062626d
--- /dev/null
+++ b/sql/updates/world/2013_09_02_17_world_command.sql
@@ -0,0 +1,11 @@
+/* cs_cast.cpp */
+
+SET @id = 263;
+
+-- Update command table with new RBAC permissions
+UPDATE `command` SET `permission` = @id+0 WHERE `name` = 'cast';
+UPDATE `command` SET `permission` = @id+1 WHERE `name` = 'cast back';
+UPDATE `command` SET `permission` = @id+2 WHERE `name` = 'cast dist';
+UPDATE `command` SET `permission` = @id+3 WHERE `name` = 'cast self';
+UPDATE `command` SET `permission` = @id+4 WHERE `name` = 'cast target';
+UPDATE `command` SET `permission` = @id+5 WHERE `name` = 'cast dest';
diff --git a/sql/updates/world/2013_09_02_18_world_command.sql b/sql/updates/world/2013_09_02_18_world_command.sql
new file mode 100644
index 00000000000..f9923e7d755
--- /dev/null
+++ b/sql/updates/world/2013_09_02_18_world_command.sql
@@ -0,0 +1,23 @@
+/* cs_character.cpp */
+
+SET @id = 273;
+
+-- Update command table with new RBAC permissions
+UPDATE `command` SET `permission` = @id+0 WHERE `name` = 'character';
+UPDATE `command` SET `permission` = @id+1 WHERE `name` = 'character customize';
+UPDATE `command` SET `permission` = @id+2 WHERE `name` = 'character changefaction';
+UPDATE `command` SET `permission` = @id+3 WHERE `name` = 'character changerace';
+UPDATE `command` SET `permission` = @id+4 WHERE `name` = 'character deleted';
+UPDATE `command` SET `permission` = @id+5 WHERE `name` = 'character deleted delete';
+UPDATE `command` SET `permission` = @id+6 WHERE `name` = 'character deleted list';
+UPDATE `command` SET `permission` = @id+7 WHERE `name` = 'character deleted restore';
+UPDATE `command` SET `permission` = @id+8 WHERE `name` = 'character deleted old';
+UPDATE `command` SET `permission` = @id+9 WHERE `name` = 'character erase';
+UPDATE `command` SET `permission` = @id+10 WHERE `name` = 'character level';
+UPDATE `command` SET `permission` = @id+11 WHERE `name` = 'character rename';
+UPDATE `command` SET `permission` = @id+12 WHERE `name` = 'character reputation';
+UPDATE `command` SET `permission` = @id+13 WHERE `name` = 'character titles';
+UPDATE `command` SET `permission` = @id+14 WHERE `name` = 'levelup';
+UPDATE `command` SET `permission` = @id+15 WHERE `name` = 'pdump';
+UPDATE `command` SET `permission` = @id+16 WHERE `name` = 'pdump load';
+UPDATE `command` SET `permission` = @id+17 WHERE `name` = 'pdump write';