Bug #74297 create user with plugin and password
| Submitted: | 9 Oct 2014 12:42 | Modified: | 8 Apr 2015 21:05 |
|---|---|---|---|
| Reporter: | Daniël van Eeden | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Security: Privileges | Severity: | S4 (Feature request) |
| Version: | 5.7 | OS: | Any |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | authentication, password, plugin, Security | ||
[9 Oct 2014 12:42]
Daniël van Eeden
Added tags
[9 Oct 2014 13:48]
Daniël van Eeden
It is possible to specify an authentication_string (saved in mysql.user.authentication_string), but that doesn't change anything. create user 'test2'@'%' identified with mysql_native_password AS 'foobar';
[9 Oct 2014 14:36]
Todd Farmer
Hi Daniël, thanks for a great feature request. There is work underway already to support this exact use case in 5.7 (ability to define account, plugin and password in a single command). I'll leave this bug report open until that's implemented.
[9 Oct 2014 14:37]
Todd Farmer
Verified as feature request.
[8 Apr 2015 21:01]
Todd Farmer
This is fixed in MySQL 5.7.6 with new CREATE USER syntax.
[8 Apr 2015 21:05]
Todd Farmer
Posted by developer: This is fixed in MySQL 5.7.6+ with the introduction of new CREATE USER syntax (WL#6409). Documented in 5.7.6 change log and CREATE USER syntax documentation.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.055 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.
Description: With CREATE USER I can use IDENTIFIED WITH _or_ IDENTIFIED BY. When I want to create a user with a specific plugin: CREATE USER 'foo'@'bar' IDENTIFIED WITH 'mysql_native_password'; SET PASSWORD FOR 'foo'@'bar' = PASSWORD('sakila'); This leaves a window in which the user exists, but without password. The user is already allowed to login. How to repeat: Try to create a user with an explicit auth plugin and a password. Try to do this without any window in witch password-less logins on this account are allowed. Suggested fix: Creating the user as disabled (not expired!) and the enabling it when the password is set might work. Unfortunately mysql_no_login is an authentication plugin itself, so this doesn't work for now. The best solution: allow the user to specify a plugin and a password in CREATE USER.