polardbxengine/mysql-test/suite/x/r/connection_auth_same_user_n...

108 lines
4.0 KiB
Plaintext

call mtr.add_suppression("Plugin mysqlx reported: .*Unsuccessful login attempt: Invalid user or password");
CREATE DATABASE xtest;
USE xtest;
CREATE USER user1@'%' IDENTIFIED WITH 'mysql_native_password' BY 'pass_all_hosts';
CREATE USER user1@'127.0.0.1' IDENTIFIED WITH 'mysql_native_password' BY 'pass_127.0.0.1';
CREATE USER user1@'localhost' IDENTIFIED WITH 'mysql_native_password' BY 'pass_localhost';
CREATE TABLE `table_all_hosts`(id integer);
CREATE TABLE `table_127.0.0.1`(id integer);
CREATE TABLE `table_localhost`(id integer);
INSERT INTO `table_all_hosts`(id) VALUES(2),(4);
INSERT INTO `table_127.0.0.1`(id) VALUES(1),(3);
INSERT INTO `table_localhost`(id) VALUES(5),(6);
GRANT SELECT ON xtest.`table_all_hosts` TO 'user1'@'%';
GRANT SELECT ON xtest.`table_127.0.0.1` TO 'user1'@'127.0.0.1';
GRANT SELECT ON xtest.`table_localhost` TO 'user1'@'localhost';
##
## X Plugin should only authenticate 'user1'@'127.0.0.1' account on TCP
##
RUN select current_user();
current_user()
user1@127.0.0.1
0 rows affected
RUN select * from `table_all_hosts`;
Got expected error (code 0)
RUN select * from `table_127.0.0.1`;
Got expected error (code 0)
RUN select * from `table_localhost`;
Got expected error (code 0)
Mysqlx.Ok {
msg: "bye!"
}
Login with 'user1:pass_localhost@localhost/xtest' should fail
error (as expected): Access denied for user 'user1'@'localhost' (using password: YES) (code 1045)
ok
Login with 'user1:pass_all_hosts@localhost/xtest' should fail
error (as expected): Access denied for user 'user1'@'localhost' (using password: YES) (code 1045)
ok
##
## X Plugin should only authenticate 'user1'@'localhost' account on UNIX socket
##
RUN select current_user();
current_user()
user1@localhost
0 rows affected
RUN select * from `table_all_hosts`;
Got expected error (code 0)
RUN select * from `table_127.0.0.1`;
Got expected error: SELECT command denied to user 'user1'@'localhost' for table 'table_127.0.0.1' (code 1142)
RUN select * from `table_localhost`;
Got expected error (code 0)
Mysqlx.Ok {
msg: "bye!"
}
Login with 'user1:pass_127.0.0.1@localhost/xtest' should fail
error (as expected): Access denied for user 'user1'@'localhost' (using password: YES) (code 1045)
ok
Login with 'user1:pass_all_hosts@localhost/xtest' should fail
error (as expected): Access denied for user 'user1'@'localhost' (using password: YES) (code 1045)
ok
DROP USER user1@'127.0.0.1';
##
## X Plugin should only authenticate 'user1'@'127.0.0.%' account on TCP
##
Login with 'user1:pass_127.0.0.1@localhost/xtest' should fail
error (as expected): Access denied for user 'user1'@'localhost' (using password: YES) (code 1045)
ok
RUN select current_user();
current_user()
user1@localhost
0 rows affected
RUN select * from `table_all_hosts`;
Got expected error (code 0)
RUN select * from `table_127.0.0.1`;
Got expected error: SELECT command denied to user 'user1'@'localhost' for table 'table_127.0.0.1' (code 1142)
RUN select * from `table_localhost`;
Got expected error (code 0)
Mysqlx.Ok {
msg: "bye!"
}
Login with 'user1:pass_all_hosts@localhost/xtest' should fail
error (as expected): Access denied for user 'user1'@'localhost' (using password: YES) (code 1045)
ok
DROP USER user1@'localhost';
##
## X Plugin should only authenticate 'user1'@'%' account on TCP
##
Login with 'user1:pass_127.0.0.1@localhost/xtest' should fail
error (as expected): Access denied for user 'user1'@'localhost' (using password: YES) (code 1045)
ok
Login with 'user1:pass_localhost@localhost/xtest' should fail
error (as expected): Access denied for user 'user1'@'localhost' (using password: YES) (code 1045)
ok
RUN select current_user();
current_user()
user1@%
0 rows affected
RUN select * from `table_all_hosts`;
Got expected error (code 0)
RUN select * from `table_127.0.0.1`;
Got expected error: SELECT command denied to user 'user1'@'localhost' for table 'table_127.0.0.1' (code 1142)
RUN select * from `table_localhost`;
Got expected error: SELECT command denied to user 'user1'@'localhost' for table 'table_localhost' (code 1142)
Mysqlx.Ok {
msg: "bye!"
}
DROP DATABASE xtest;
DROP USER user1@'%';