mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 12:13:33 +00:00

PARSEC: Password Authentication using Response Signed with Elliptic Curve new authentication plugin that uses salted passwords, key derivation, extensible password storage format, and both server- and client-side scrambles. It signs the response with ed25519, but it uses stock unmodified ed25519 as provided by OpenSSL/WolfSSL/GnuTLS. Edited by: Sergei Golubchik
58 lines
1.7 KiB
Plaintext
58 lines
1.7 KiB
Plaintext
if ($MTR_COMBINATION_ED25519) {
|
|
if (!$AUTH_ED25519_SO) {
|
|
skip No auth_ed25519 plugin;
|
|
}
|
|
let $AUTH_PLUGIN = ed25519;
|
|
let $CLIENT_PLUGIN=client_ed25519;
|
|
}
|
|
|
|
if ($MTR_COMBINATION_PARSEC) {
|
|
if (!$AUTH_PARSEC_SO) {
|
|
skip No auth_parsec plugin;
|
|
}
|
|
let $AUTH_PLUGIN = parsec;
|
|
let $CLIENT_PLUGIN=parsec;
|
|
}
|
|
|
|
--replace_result $CLIENT_PLUGIN CLIENT_PLUGIN
|
|
--error ER_CANT_OPEN_LIBRARY,ER_CANT_FIND_DL_ENTRY
|
|
eval install soname '$CLIENT_PLUGIN';
|
|
if ($errno == 1126) {
|
|
# this happens in bintars when C/C is linked with gnutls
|
|
skip $CLIENT_PLUGIN is not found or contains unresolved symbols;
|
|
}
|
|
|
|
source include/master-slave.inc;
|
|
|
|
sync_slave_with_master;
|
|
--replace_result $AUTH_PLUGIN PLUGIN
|
|
eval install soname 'auth_$AUTH_PLUGIN';
|
|
# create a user for replication with auth plugin
|
|
connection master;
|
|
--replace_result $AUTH_PLUGIN plugin
|
|
eval install soname 'auth_$AUTH_PLUGIN';
|
|
|
|
--replace_result $AUTH_PLUGIN PLUGIN
|
|
eval create user rpluser@'%' identified via $AUTH_PLUGIN using PASSWORD('rpl_pass');
|
|
grant replication slave on *.* to rpluser@'%';
|
|
connection master;
|
|
sync_slave_with_master;
|
|
# Set the slave to connect using the user created with the auth plugin for replication
|
|
source include/stop_slave.inc;
|
|
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
|
change master to master_user='rpluser', master_password='rpl_pass';
|
|
source include/start_slave.inc;
|
|
|
|
--echo # Cleanup
|
|
source include/stop_slave.inc;
|
|
change master to master_user='root', master_password='';
|
|
source include/start_slave.inc;
|
|
source include/stop_slave.inc;
|
|
drop user rpluser@'%';
|
|
--replace_result $AUTH_PLUGIN plugin
|
|
eval uninstall soname 'auth_$AUTH_PLUGIN';
|
|
connection master;
|
|
drop user rpluser@'%';
|
|
--replace_result $AUTH_PLUGIN plugin
|
|
eval uninstall soname 'auth_$AUTH_PLUGIN';
|