diff options
author | Sergei Golubchik <serg@mariadb.org> | 2019-01-10 13:51:51 +0100 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2019-02-04 16:06:57 +0100 |
commit | 5b15cc613ec60f44003dd7d2fdb6421d220b6ee9 (patch) | |
tree | 149c4a8b020c5fc7494044e3a812c1b8db19b302 /libmariadb | |
parent | 798d1a9ddf159941228ac9c452c1384197d1aef0 (diff) | |
download | mariadb-git-5b15cc613ec60f44003dd7d2fdb6421d220b6ee9.tar.gz |
MDEV-11340 Allow multiple alternative authentication methods for the same user
introduce the syntax
... IDENTIFIED { WITH | VIA }
plugin [ { USING | AS } auth ]
[ OR plugin [ { USING | AS } auth ]
[ OR ... ]]
Server will try auth plugins in the specified order until the first
success. No protocol changes, server uses the existing "switch plugin"
packet.
The auth chain is stored in json as
"auth_or":[{"plugin":"xxx","authentication_string":"yyy"},
{},
{"plugin":"foo","authentication_string":"bar"},
...],
"plugin":"aaa", "authentication_string":"bbb"
Note:
* "auth_or" implies that there might be "auth_and" someday;
* one entry in the array is an empty object, meaning to take plugin/auth
from the main json object. This preserves compatibility with
the existing mysql.global_priv table and with the mysql.user view.
This entry is preferrably a mysql_native_password plugin for a
non-empty mysql.user.password column.
SET PASSWORD is supported and changes the password for the *first*
plugin in the chain that has a notion of a "password"
Diffstat (limited to 'libmariadb')
m--------- | libmariadb | 0 |
1 files changed, 0 insertions, 0 deletions
diff --git a/libmariadb b/libmariadb -Subproject a4effc462ddb80b61ebb559d48b50fa8d6c0ed6 +Subproject 1e4b08bd2989c664f6f43e0dbb2c71be9552bc8 |