[MDEV-18297] Document in detail the new authentication in 10.4 -- tables, views, common scenarios, troubleshooting, etc. Created: 2019-01-18 Updated: 2019-08-13 Resolved: 2019-08-13 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Authentication and Privilege System, Documentation |
| Fix Version/s: | N/A |
| Type: | Task | Priority: | Critical |
| Reporter: | Elena Stepanova | Assignee: | Ian Gilfillan |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Attachments: |
|
| Description |
| Comments |
| Comment by Sergei Golubchik [ 2019-02-05 ] | ||||
|
Now one can use an update such as
or even
to remove all traces of authentication for the root user. I can make it simpler (patch attached
But after | ||||
| Comment by Elena Stepanova [ 2019-02-05 ] | ||||
|
We need to find a good place in the KB for the new suggested syntax. | ||||
| Comment by Sergei Golubchik [ 2019-02-19 ] | ||||
Some answershow to connect to the server after installing the server system-wide (used to be -uroot without the password or with the password set upon installation, not anymore); Not on Windows: There are two password-less accounts, root@localhost and whatever user owns the datadir (usually it's mysql), also @localhost. To connect one could use sudo mysql or sudo -u mysql mysql. The second should be a safer solution for scripting, because scripts won't need to run under system root credentials. After connecting to the server one can use SET PASSWORD to set a root@localhost (or mysql@localhost) password and access it in the future without sudo (but with a password), if needed. on Windows — nothing changed, I presume (mysql_install_db doesn't apply) how to connect to the server after installing the server locally, under a non-root user (used to be -uroot without the password or with the password set upon installation, not anymore); Same as above. The second password-less account is for the user who owns the datadir. So, after installing MariaDB locally under a non-root account, simply run mysql. what, if any, considerations regarding compilation options need to be made when compiling the server from source; If one disables unix_socket, say with -DPLUGIN_AUTH_SOCKET=NO (or simply starts the server with --disable-unix-socket) the above will not work, one should either not use mysql_install_db in this case, or start the server with --skip-grant-tables and update privilege tables to not refer to unix_socket plugin. how to troubleshoot and fix the broken auth info (used to be via -skip-grant-tables + flush privileges, not anymore); --skip-grant-tables + flush privileges + set password or alter user how to see all users' configuration (used to be select user, host, plugin, ... from mysql.user, not anymore); for example... select user,host,json_detailed(Priv) from mysql.global_priv but this is peeking into internal data, they can change any time in any way and in any release. how to reset the password if unix_socket can't be used (used to be via mysql.user update, see comments, but fix the syntax of the suggested update); ALTER USER or updating mysql.global_priv but see the disclaimer above. how to update users in bulk (used to be via mysql.user update, probably not anymore); by updating mysql.global_priv but see the disclaimer above. | ||||
| Comment by Sergei Golubchik [ 2019-02-19 ] | ||||
|
Also, | ||||
| Comment by Elena Stepanova [ 2019-03-21 ] | ||||
|
It's been closed, but I still can't even find where it was documented. Pluggable Authentication ... and 10 more pages to go, every next one looking worse than previous ones. Please make sure the documentation is findable for anyone other than the authors. | ||||
| Comment by Sergei Golubchik [ 2019-04-01 ] | ||||
|
greenman: https://mariadb.org/authentication-in-mariadb-10-4/ | ||||
| Comment by Ian Gilfillan [ 2019-04-02 ] | ||||
|
Re-opening to keep on the radar, and incorporate Sergei's blog post | ||||
| Comment by Ian Gilfillan [ 2019-08-13 ] | ||||
|
Further user feedback incorporated, nothing for a while so can be closed |