Changeset: 0ddb97ed7774 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/0ddb97ed7774 Modified Files: sql/test/mergetables/Tests/mergetable-perms-base.test sql/test/mergetables/Tests/mergetable-select-perms.test Branch: default Log Message:
Adds tests for mergetable perms over cols diffs (111 lines): diff --git a/sql/test/mergetables/Tests/mergetable-perms-base.test b/sql/test/mergetables/Tests/mergetable-perms-base.test --- a/sql/test/mergetables/Tests/mergetable-perms-base.test +++ b/sql/test/mergetables/Tests/mergetable-perms-base.test @@ -10,6 +10,8 @@ create table part2 (n int, m text) statement ok insert into part2 values (2, 'bob') +-- allparts for perms on table + statement ok create merge table allparts (n int, m text) @@ -18,3 +20,14 @@ alter table allparts add table part1 statement ok alter table allparts add table part2 + +-- allparts_2 for perms on columns + +statement ok +create merge table allparts_2 (n int, m text) + +statement ok +alter table allparts_2 add table part1 + +statement ok +alter table allparts_2 add table part2 diff --git a/sql/test/mergetables/Tests/mergetable-select-perms.test b/sql/test/mergetables/Tests/mergetable-select-perms.test --- a/sql/test/mergetables/Tests/mergetable-select-perms.test +++ b/sql/test/mergetables/Tests/mergetable-select-perms.test @@ -1,4 +1,4 @@ --- select through individual user perms +-- select * through individual user perms statement ok create user kate with password '123kate' name 'Kate' schema sys @@ -19,7 +19,34 @@ alice 2 bob --- select through role +-- select (cols) through individual user perms + +@connection(id=tc, username=kate, password=123kate) +statement error 42000!SELECT: access denied for kate to table 'sys.allparts_2' +select n from allparts_2 + +statement ok +grant select (n) on allparts_2 to kate + +@connection(id=tc, username=kate, password=123kate) +query I rowsort +select * from allparts_2 +---- +1 +2 + +@connection(id=tc, username=kate, password=123kate) +query I rowsort +select n from allparts_2 +---- +1 +2 + +@connection(id=tc, username=kate, password=123kate) +statement error SELECT: identifier 'm' unknown +select m from allparts_2 + +-- select * through role statement ok create role reader @@ -33,7 +60,7 @@ create user tom with password '123tom' n statement ok alter user tom default role reader -@connection(id=tc, username=tom, password=123tom) +@connection(id=tc2, username=tom, password=123tom) query IT rowsort select * from allparts ---- @@ -41,3 +68,29 @@ 1 alice 2 bob + +-- select (cols) through role + +statement ok +grant select (n) on allparts_2 to reader + +statement ok +alter user tom default role reader + +@connection(id=tc2, username=tom, password=123tom) +query I rowsort +select * from allparts_2 +---- +1 +2 + +@connection(id=tc2, username=tom, password=123tom) +query I rowsort +select n from allparts_2 +---- +1 +2 + +@connection(id=tc2, username=tom, password=123tom) +statement error SELECT: identifier 'm' unknown +select m from allparts_2 _______________________________________________ checkin-list mailing list -- [email protected] To unsubscribe send an email to [email protected]
