diff options
Diffstat (limited to 'mysql-test/main/grant_slave_admin.test')
-rw-r--r-- | mysql-test/main/grant_slave_admin.test | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/mysql-test/main/grant_slave_admin.test b/mysql-test/main/grant_slave_admin.test new file mode 100644 index 00000000..d73c31e0 --- /dev/null +++ b/mysql-test/main/grant_slave_admin.test @@ -0,0 +1,74 @@ +-- source include/not_embedded.inc + +--echo # +--echo # Start of 10.5 tests +--echo # + +--echo # +--echo # MDEV-21743 Split up SUPER privilege to smaller privileges +--echo # + +--echo # +--echo # Test that slave admin statements are not allowed without REPLICATION SLAVE ADMIN or SUPER +--echo # + +CREATE USER user1@localhost IDENTIFIED BY ''; +GRANT ALL PRIVILEGES ON *.* TO user1@localhost; +REVOKE REPLICATION SLAVE ADMIN, SUPER ON *.* FROM user1@localhost; + +connect (con1,localhost,user1,,); +connection con1; +--error ER_SPECIFIC_ACCESS_DENIED_ERROR +START SLAVE; +--error ER_SPECIFIC_ACCESS_DENIED_ERROR +CHANGE MASTER TO MASTER_HOST='127.0.0.1'; +--error ER_SPECIFIC_ACCESS_DENIED_ERROR +STOP SLAVE; +disconnect con1; + +connection default; +DROP USER user1@localhost; + + +--echo # +--echo # Test that slave admin statements are allowed with REPLICATION SLAVE ADMIN +--echo # + +CREATE USER user1@localhost IDENTIFIED BY ''; +GRANT REPLICATION SLAVE ADMIN ON *.* TO user1@localhost; +SHOW GRANTS FOR user1@localhost; + +connect (con1,localhost,user1,,); +connection con1; +--error ER_BAD_SLAVE +START SLAVE; +CHANGE MASTER TO MASTER_USER='root'; +STOP SLAVE; +disconnect con1; + +connection default; +DROP USER user1@localhost; + + +--echo # +--echo # Test that slave admin statements are allowed with SUPER +--echo # + +CREATE USER user1@localhost IDENTIFIED BY ''; +GRANT SUPER ON *.* TO user1@localhost; +SHOW GRANTS FOR user1@localhost; + +connect (con1,localhost,user1,,); +connection con1; +--error ER_BAD_SLAVE +START SLAVE; +CHANGE MASTER TO MASTER_USER='root'; +STOP SLAVE; +disconnect con1; + +connection default; +DROP USER user1@localhost; + +--echo # +--echo # End of 10.5 tests +--echo # |