如何理解MySQL的可插入验证和客户端明文验证插件
如何理解MySQL的可插入验证和客户端明文验证插件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
MySQL 支持多种通过可插入验证提供的验证机制。
插件是内置的,也可作为外部库提供。
默认的服务器端插件是内置的,始终可用,其中包括:
– mysql_native_password:这是默认机制
– mysql_old_password:此插件的实现验证的方式与MySQL4.1.1 之前的版本相同。
– sha256_password:此插件可启用口令的SHA-256散列。
MySQL 使用多种算法对用户表中存储的口令加密:
mysql_native_password 插件实施标准口令格式:41 字节宽的散列。
mysql_old_password 插件实施较旧的格式,安全性较低,16 字节宽。
sha256_password 插件实施在安全计算中广泛采用的SHA-256 散列算法。
old_passwords 系统变量的值指定PASSWORD() 函数用于创建口令的算法,如下所示:
0:标准算法,与MySQL 4.1.1 及更高版本中所用的算法相同
1:旧算法,与MySQL 4.1.1 之前版本中所用的算法相同
2:SHA-256 算法
启动服务器时将default-authentication-plugin 选项设置为sha256_password,
可将SHA-256 口令用于所有新用户,也可使用CREATE USER 和IDENTIFIED WITH sha256_password子句为特定用户指定SHA-256 口令。
客户端明文验证插件
MySQL 客户机库中有一个内置的明文验证插件
mysql_clear_password。该插件:
用于将纯文本口令发送给服务器
– 口令通常经过散列处理。
通过以下方式启用:
– LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN 环境变量
– 在运行MySQL 客户机应用程序(如mysql 和
mysqladmin)时指定--enable-cleartext-plugin
– mysql_options() C API 函数的
MYSQL_ENABLE_CLEARTEXT_PLUGIN 选项
有些验证方法(如PAM(Pluggable Authentication Module,可插入验证模块)验证)要求客户机向服务器发送纯文本口令,以便服务器处理普通形式的口令。
mysql_clear_password 插件支持此行为。
关于如何理解MySQL的可插入验证和客户端明文验证插件问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341