mirror of
https://github.com/MariaDB/server.git
synced 2026-10-23 18:49:29 +03:00
if a user tries to access a table or a database they have no priivleges on, the error is alwaus "access denied", independently from whether the object exists or not. Do the same for columns.
57 lines
1.3 KiB
Plaintext
57 lines
1.3 KiB
Plaintext
# Grant tests not performed with embedded server
|
|
-- source include/not_embedded.inc
|
|
|
|
--source include/have_debug.inc
|
|
##TEST for invisible coloumn level 3
|
|
set @old_debug= @@debug_dbug;
|
|
create user user_1;
|
|
show grants for user_1;
|
|
--echo # create user
|
|
create database d;
|
|
use d;
|
|
|
|
--echo
|
|
--echo #Completely Invisible
|
|
set debug_dbug= "+d,test_completely_invisible";
|
|
create table t1(a int);
|
|
insert into t1 values(1);
|
|
select a,invisible from t1;
|
|
set debug_dbug=@old_debug;
|
|
grant insert(a) on t1 to user_1;
|
|
grant update(a) on t1 to user_1;
|
|
grant select(a) on t1 to user_1;
|
|
grant delete on t1 to user_1;
|
|
connect (con1, localhost, user_1,,d);
|
|
connection con1;
|
|
select user();
|
|
select * from t1;
|
|
insert into t1 values(2);
|
|
select * from t1;
|
|
insert into t1(a) values(3);
|
|
select * from t1;
|
|
--error ER_COLUMNACCESS_DENIED_ERROR
|
|
select invisible,a from t1;
|
|
delete from t1 where a =1;
|
|
update t1 set a=1 where a=3;
|
|
select * from t1;
|
|
|
|
connection default;
|
|
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user_1;
|
|
|
|
connection con1;
|
|
--error ER_TABLEACCESS_DENIED_ERROR
|
|
select * from t1;
|
|
--error ER_TABLEACCESS_DENIED_ERROR
|
|
select invisible from t1;
|
|
|
|
disconnect con1;
|
|
--source include/wait_until_disconnected.inc
|
|
--echo
|
|
--echo #Final Cleanup
|
|
connection default;
|
|
set debug_dbug= "+d,test_completely_invisible";
|
|
select a,invisible from t1;
|
|
drop user user_1;
|
|
drop database d;
|
|
set @old_debug= @@debug_dbug;
|