summaryrefslogtreecommitdiff
path: root/mysql-test/suite/galera/t/galera_account_management.test
blob: 6dea0fcfa9e25a6957303e6ba636c9dd7571848e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#
# Test the account management statements - GRANT, REVOKE, etc.
#

--source include/galera_cluster.inc
--source include/have_innodb.inc

#
# CREATE USER
#
--connection node_1
CREATE USER user1, user2 IDENTIFIED BY 'password';

--connection node_2
SELECT COUNT(*) = 2 FROM mysql.user WHERE user IN ('user1', 'user2');

#
# ALTER USER
#

--connection node_1
ALTER USER user1 PASSWORD EXPIRE;
SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1';

--connection node_2
SELECT password_expired = 'Y' FROM mysql.user WHERE user = 'user1';

#
# RENAME USER
#

--connection node_1
RENAME USER user2 TO user3;

--connection node_2
SELECT COUNT(*) = 0 FROM mysql.user WHERE user = 'user2';
SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user3';

#
# SET PASSWORD
#

--connection node_1
SET PASSWORD FOR user3 = PASSWORD('foo');

--connection node_1
SELECT password != '' FROM mysql.user WHERE user = 'user3';

#
# DROP USER
#
--connection node_1
DROP USER user1, user3;

--connection node_2
SELECT COUNT(*) = 0 FROM mysql.user WHERE user IN ('user1', 'user2');

#
# GRANT
#

--connection node_1
GRANT ALL ON *.* TO user4 IDENTIFIED BY 'password';

--connection node_2
SELECT COUNT(*) = 1 FROM mysql.user WHERE user = 'user4';
SELECT Select_priv = 'Y' FROM mysql.user WHERE user = 'user4';

#
# GRANT PROXY ON
#
--connection node_1
CREATE USER user5;
GRANT PROXY ON user4 TO user5;

--connection node_2
SELECT COUNT(*) = 1 FROM mysql.proxies_priv WHERE user = 'user5';

#
# REVOKE
#

--connection node_1
REVOKE ALL PRIVILEGES ON *.* FROM user4;

--connection node_2
SELECT Select_priv = 'N' FROM mysql.user WHERE user = 'user4';

#
# REVOKE PROXY
#

--connection node_1
REVOKE PROXY ON user4 FROM user5;

--connection node_2
SELECT COUNT(*) = 0 FROM mysql.proxies_priv WHERE user = 'user5';

DROP USER user4, user5;