summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
authorVladislav Vaintroub <wlad@mariadb.com>2022-05-20 16:32:35 +0200
committerVladislav Vaintroub <wlad@mariadb.com>2022-11-08 14:58:47 +0100
commit125e172a2bdfbf4e8c9700db4a353e67424b1352 (patch)
tree2546b8241c0ebe94f8378253e30b2523386aef93 /mysql-test
parente387b396d1fdd329ef5ff30c9870087ab45ee68c (diff)
downloadmariadb-git-125e172a2bdfbf4e8c9700db4a353e67424b1352.tar.gz
MDEV-26715 Windows/installer - allow passwordless login for root
Allow passwordless login in addition to usual login with password, when creating 'root' user during install. The effect of that change is that "local administrators" group are allowed to connect as root user. This is done via gssapi authentication plugin. Clients that are not aware of gssapi client plugin, can still login with password credentials.
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/main/mysql_install_db_win_admin.result12
-rw-r--r--mysql-test/main/mysql_install_db_win_admin.test21
-rw-r--r--mysql-test/main/mysqld--help.test2
-rwxr-xr-xmysql-test/mariadb-test-run.pl3
4 files changed, 36 insertions, 2 deletions
diff --git a/mysql-test/main/mysql_install_db_win_admin.result b/mysql-test/main/mysql_install_db_win_admin.result
new file mode 100644
index 00000000000..06d3d677977
--- /dev/null
+++ b/mysql-test/main/mysql_install_db_win_admin.result
@@ -0,0 +1,12 @@
+use mysql;
+Running bootstrap
+Creating my.ini file
+Removing default user
+Allowing remote access for user root
+Setting root password
+Creation of the database was successful
+# Kill the server
+# restart: --datadir=MYSQLTEST_VARDIR/tmp/ddir
+connect root,localhost,root,wrongpass,mysql;
+# Kill the server
+# restart
diff --git a/mysql-test/main/mysql_install_db_win_admin.test b/mysql-test/main/mysql_install_db_win_admin.test
new file mode 100644
index 00000000000..a6b98f97058
--- /dev/null
+++ b/mysql-test/main/mysql_install_db_win_admin.test
@@ -0,0 +1,21 @@
+--source include/windows.inc
+--source include/check_windows_admin.inc
+--source include/have_innodb.inc
+
+# Create database in tmp directory using mysql_install_db.exe,
+# and start server from this directory.
+let $ddir= $MYSQLTEST_VARDIR/tmp/ddir;
+use mysql;
+exec $MYSQL_INSTALL_DB_EXE --datadir=$ddir --password=foo -R;
+--source include/kill_mysqld.inc
+let $restart_parameters=--datadir=$ddir;
+--source include/start_mysqld.inc
+
+# Check that connect with wrong password succeeds
+connect (root,localhost,root,wrongpass,mysql);
+
+--source include/kill_mysqld.inc
+let $restart_parameters=;
+rmdir $ddir;
+--source include/start_mysqld.inc
+
diff --git a/mysql-test/main/mysqld--help.test b/mysql-test/main/mysqld--help.test
index 35b3363e8d8..a73562e4249 100644
--- a/mysql-test/main/mysqld--help.test
+++ b/mysql-test/main/mysqld--help.test
@@ -41,7 +41,7 @@ perl;
wsrep file-key-management cracklib-password-check user-variables
provider-bzip2 provider-lzma provider-lzo
thread-pool-groups thread-pool-queues thread-pool-stats
- thread-pool-waits hashicorp provider/;
+ thread-pool-waits hashicorp provider gssapi/;
# And substitute the content some environment variables with their
# names:
diff --git a/mysql-test/mariadb-test-run.pl b/mysql-test/mariadb-test-run.pl
index 491779dd613..5d84f73cc58 100755
--- a/mysql-test/mariadb-test-run.pl
+++ b/mysql-test/mariadb-test-run.pl
@@ -1769,7 +1769,8 @@ sub collect_mysqld_features {
and $1 ne "innodb-buffer-page"
and $1 ne "innodb-lock-waits"
and $1 ne "innodb-locks"
- and $1 ne "innodb-trx";
+ and $1 ne "innodb-trx"
+ and $1 ne "gssapi";
next;
}