Skip to content
Snippets Groups Projects
Commit bf463f4f authored by Sascha Herzinger's avatar Sascha Herzinger
Browse files

fixed migration script

parent 000b4cfc
No related branches found
No related tags found
2 merge requests!836Resolve "Implement Spring Security",!613WIP: New Minerva Security Layer
Pipeline #11117 failed
......@@ -26,6 +26,7 @@ from privilege_table where type = 'VIEW_PROJECT';
alter table privilege_table drop column privilege_class_type_db;
alter table privilege_table drop column id;
update privilege_table set object_id = -1 where object_id is null;
alter table privilege_table add primary key (type, object_id);
......@@ -37,22 +38,22 @@ create table user_privilege_map_table (
);
insert into user_privilege_map_table (user_id, privilege_id)
select s1.user_id, s2.id
insert into user_privilege_map_table (user_id, type, object_id)
select s1.user_id, s2.type, s2.object_id
from (select user_id, object_id from privilege_table where type = 'VIEW_PROJECT') s1
inner join (select id, object_id from privilege_table where type = 'READ_PROJECT') s2
inner join (select type, object_id from privilege_table where type = 'READ_PROJECT') s2
on s1.object_id = s2.object_id;
insert into user_privilege_map_table (user_id, privilege_id)
select user_id, (select id from privilege_table where type = 'IS_ADMIN')
insert into user_privilege_map_table (user_id, type, object_id)
select user_id, (select type from privilege_table where type = 'IS_ADMIN'), -1
from privilege_table where type = 'USER_MANAGEMENT';
insert into user_privilege_map_table (user_id, privilege_id)
select user_id, (select id from privilege_table where type = 'IS_CURATOR')
insert into user_privilege_map_table (user_id, type, object_id)
select user_id, (select type from privilege_table where type = 'IS_CURATOR'), -1
from privilege_table where type = 'ADD_MAP';
insert into user_privilege_map_table (user_id, privilege_id)
select user_id, (select id from privilege_table where type = 'CAN_CREATE_OVERLAYS')
insert into user_privilege_map_table (user_id, type, object_id)
select user_id, (select type from privilege_table where type = 'CAN_CREATE_OVERLAYS'), -1
from privilege_table where type = 'CUSTOM_LAYOUTS';
delete from privilege_table where type = 'VIEW_PROJECT'
......@@ -70,10 +71,9 @@ delete from privilege_table where type = 'VIEW_PROJECT'
delete from user_privilege_map_table t1 using user_privilege_map_table t2
where t1.CTID != t2.CTID
and t1.user_id = t2.user_id
and t1.privilege_id = t2.privilege_id;
and t1.type = t2.type
and t1.object_id = t2.object_id;
alter table user_privilege_map_table add primary key (user_id, privilege_id);
alter table user_privilege_map_table add primary key (user_id, type, object_id);
alter table privilege_table drop column user_id;
alter table privilege_table add constraint unique_rows unique (privilege_class_type_db, type, object_id);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment