Core/RBAC: Move instance commands to RBAC (using individual permissions)

This commit is contained in:
Spp
2013-09-02 11:58:14 +02:00
parent 08ef6bd9f8
commit 2625e78f80
4 changed files with 43 additions and 7 deletions
@@ -0,0 +1,21 @@
/* cs_instance.cpp */
SET @id = 412;
-- Add new permissions
DELETE FROM `rbac_permissions` WHERE `id` BETWEEN @id AND @id+4;
INSERT INTO `rbac_permissions` (`id`, `name`) VALUES
(@id+0, 'instance'),
(@id+1, 'instance listbinds'),
(@id+2, 'instance unbind'),
(@id+3, 'instance stats'),
(@id+4, 'instance savedata');
-- Add permissions to "corresponding Commands Role"
DELETE FROM `rbac_role_permissions` WHERE `permissionId` BETWEEN @id AND @id+4;
INSERT INTO `rbac_role_permissions` (`roleId`, `permissionId`) VALUES
(2, @id+0),
(2, @id+1),
(2, @id+2),
(2, @id+3),
(2, @id+4);
@@ -0,0 +1,10 @@
/* cs_instance.cpp */
SET @id = 408;
-- Update command table with new RBAC permissions
UPDATE `command` SET `permission` = @id+0 WHERE `name` = 'instance';
UPDATE `command` SET `permission` = @id+1 WHERE `name` = 'instance listbinds';
UPDATE `command` SET `permission` = @id+2 WHERE `name` = 'instance unbind';
UPDATE `command` SET `permission` = @id+3 WHERE `name` = 'instance stats';
UPDATE `command` SET `permission` = @id+3 WHERE `name` = 'instance savedata';