Skip to content

Commit

Permalink
MDEV-14031 Password policy causes replication failure
Browse files Browse the repository at this point in the history
  • Loading branch information
Alexander Barkov committed Dec 20, 2017
1 parent 64e1dda commit c58df0c
Show file tree
Hide file tree
Showing 3 changed files with 51 additions and 1 deletion.
19 changes: 19 additions & 0 deletions mysql-test/suite/plugins/r/binlog-simple_plugin_check.result
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
INSTALL SONAME "simple_password_check";
SELECT PLUGIN_NAME FROM INFORMATION_SCHEMA.PLUGINS
WHERE PLUGIN_NAME='simple_password_check';
PLUGIN_NAME
simple_password_check
#
# MDEV-14031 Password policy causes replication failure
#
CREATE USER user1@localhost IDENTIFIED BY 'BsG9#9.cem#!85';
CREATE USER user2@localhost IDENTIFIED BY 'bsg9#d.cem#!85';
ERROR HY000: Your password does not satisfy the current policy requirements
DROP USER user1@localhost;
include/show_binlog_events.inc
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Gtid # # GTID #-#-#
master-bin.000001 # Query # # use `test`; CREATE USER user1@localhost IDENTIFIED BY 'BsG9#9.cem#!85'
master-bin.000001 # Gtid # # GTID #-#-#
master-bin.000001 # Query # # use `test`; DROP USER user1@localhost
UNINSTALL PLUGIN simple_password_check;
31 changes: 31 additions & 0 deletions mysql-test/suite/plugins/t/binlog-simple_plugin_check.test
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
--source include/not_embedded.inc
--source include/have_binlog_format_statement.inc

if (!$SIMPLE_PASSWORD_CHECK_SO) {
skip No SIMPLE_PASSWORD_CHECK plugin;
}

INSTALL SONAME "simple_password_check";
SELECT PLUGIN_NAME FROM INFORMATION_SCHEMA.PLUGINS
WHERE PLUGIN_NAME='simple_password_check';


--echo #
--echo # MDEV-14031 Password policy causes replication failure
--echo #

--disable_query_log
RESET MASTER; # get rid of previous tests binlog
--enable_query_log

CREATE USER user1@localhost IDENTIFIED BY 'BsG9#9.cem#!85';

--error ER_NOT_VALID_PASSWORD
CREATE USER user2@localhost IDENTIFIED BY 'bsg9#d.cem#!85';

DROP USER user1@localhost;

--let $binlog_file = LAST
source include/show_binlog_events.inc;

UNINSTALL PLUGIN simple_password_check;
2 changes: 1 addition & 1 deletion sql/sql_acl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -9507,13 +9507,13 @@ bool mysql_create_user(THD *thd, List <LEX_USER> &list, bool handle_as_role)
}
}

binlog= true;
if (replace_user_table(thd, tables[USER_TABLE].table, *user_name, 0, 0, 1, 0))
{
append_user(thd, &wrong_users, user_name);
result= TRUE;
continue;
}
binlog= true;

// every created role is automatically granted to its creator-admin
if (handle_as_role)
Expand Down

0 comments on commit c58df0c

Please sign in to comment.