[MDEV-26715] Windows - passwordless login for mariadb root user, for OS admin users Created: 2021-09-28 Updated: 2023-11-02 Resolved: 2022-11-08 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Authentication and Privilege System, Server |
| Fix Version/s: | 10.11.1 |
| Type: | Task | Priority: | Critical |
| Reporter: | Vladislav Vaintroub | Assignee: | Vladislav Vaintroub |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | Preview_10.11 | ||
| Issue Links: |
|
||||||||||||||||
| Description |
|
On Linux, root user does not need a password to login, if connection is made using Unix socket. The authentication plugin unix_socket makes it possible. If the connection with unix_socket fails, root will fallback to native_authentication. The purpose of this task is to make the same possible on Windows. There is already a gssapi plugin, which can detect users with administrative privileges (with There is a subtlety with this plugin, which is not there with unix socket. The unix_socket does not send any packets between client and server, i.e it does not need client support. Thus, to avoid failures when mariadb is used with 3rd party driver, authentication on Windows should try password-based native_authentication first, and only if it fails, fallback to passwordless auth_gssapi. Note, that auth_gssapi and its client portion should be linked into the server and C client, to avoid different scenarios where plugin would not be found. |
| Comments |
| Comment by Vladislav Vaintroub [ 2022-09-14 ] | ||||||||||||||||||||||||||||||||
|
Would be nice to know in course of testing With normal installation (MSI), check how foreign (non-MariaDB) connectors behave, when connecting as user root with wrong password. Oracle's C, JDBC and .NET driver, could be used for this kind of testing. | ||||||||||||||||||||||||||||||||
| Comment by Lena Startseva [ 2022-11-07 ] | ||||||||||||||||||||||||||||||||
|
Testing is complete.
| ||||||||||||||||||||||||||||||||
| Comment by Vladislav Vaintroub [ 2022-11-07 ] | ||||||||||||||||||||||||||||||||
|
To clarify, both mysql-connector-java and mysqli will connect fine, as long as password is correct. |