Skip to content

Commit

Permalink
MDEV-25258 : SET PASSWORD command fail with wsrep api
Browse files Browse the repository at this point in the history
Problem was that we should skip strict password validation on
applier nodes similarly as is done for slave nodes.
  • Loading branch information
Jan Lindström committed Apr 28, 2021
1 parent c6dbabe commit f946192
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 1 deletion.
19 changes: 19 additions & 0 deletions mysql-test/suite/galera/r/galera_password.result
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
SHOW VARIABLES LIKE '%password%';
Variable_name Value
old_passwords OFF
report_password
strict_password_validation ON
CREATE USER 'user123456'@'localhost';
GRANT SELECT, INSERT, UPDATE ON test.* TO 'user123456'@'localhost';
SET PASSWORD FOR 'user123456'@'localhost' = PASSWORD('A$10abcdDCBA123456%7');
SHOW GRANTS FOR 'user123456'@'localhost';
Grants for user123456@localhost
GRANT USAGE ON *.* TO 'user123456'@'localhost' IDENTIFIED BY PASSWORD '*5846CF4D641598B360B3562E581586155C59F65A'
GRANT SELECT, INSERT, UPDATE ON `test`.* TO 'user123456'@'localhost'
connection node_2;
SHOW GRANTS FOR 'user123456'@'localhost';
Grants for user123456@localhost
GRANT USAGE ON *.* TO 'user123456'@'localhost' IDENTIFIED BY PASSWORD '*5846CF4D641598B360B3562E581586155C59F65A'
GRANT SELECT, INSERT, UPDATE ON `test`.* TO 'user123456'@'localhost'
connection node_1;
DROP USER 'user123456'@'localhost';
14 changes: 14 additions & 0 deletions mysql-test/suite/galera/t/galera_password.test
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
--source include/galera_cluster.inc

SHOW VARIABLES LIKE '%password%';

CREATE USER 'user123456'@'localhost';
GRANT SELECT, INSERT, UPDATE ON test.* TO 'user123456'@'localhost';
SET PASSWORD FOR 'user123456'@'localhost' = PASSWORD('A$10abcdDCBA123456%7');
SHOW GRANTS FOR 'user123456'@'localhost';

--connection node_2
SHOW GRANTS FOR 'user123456'@'localhost';

--connection node_1
DROP USER 'user123456'@'localhost';
6 changes: 5 additions & 1 deletion sql/sql_acl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1566,7 +1566,11 @@ static bool validate_password(LEX_USER *user, THD *thd)
else
{
if (!thd->slave_thread &&
strict_password_validation && has_validation_plugins())
strict_password_validation && has_validation_plugins()
#ifdef WITH_WSREP
&& !thd->wsrep_applier
#endif
)
{
my_error(ER_OPTION_PREVENTS_STATEMENT, MYF(0), "--strict-password-validation");
return true;
Expand Down

0 comments on commit f946192

Please sign in to comment.