MySQL管理——认证插件

MySQL可以通过使用不同的插件进行多种认证方式,这些插件可以是内置的,也可以是来自于外部。默认的服务器端插件是内置的,包括“cachine_sha2_password”、“sha256_password”、“mysql_native_password”,cachine_sha2_password”是MySQL8.0开始的默认插件,其他两种未来将做降级弃用处理。

MySQL服务器端“auth_socket”插件对通过Unix socket文件从本地主机连接的客户端进行身份验证。插件使用“SO_PEERCRED”套接字选项来获取有关运行客户端程序的用户的信息。因此,这个插件只能在支持“SO_PEERCRED”选项的系统上使用。

MySQL客户端库的库中内置了“mysql_clear_password”插件,该插件用于客户端发送明文密码,在一些认证方法里,例如,PAM或LDAP认证,要求客户端发送明文密码到服务器,以便服务器能以正常的格式处理这些密码。启用该插件,需要设置“LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN”环境变量,并在运行客户端时指定“--enable-cleartext-plugin”。

MySQL包含一个测试插件,用于检查帐户凭据并将成功或失败记录到服务器错误日志中。该插件不是内置插件,必须在使用前安装。插件使用“auth_test_plugin.so”文件。

MySQL还包含一个No-login插件,“mysql_no_login”服务器端身份验证插件阻止所有客户端连接到使用它的任何帐户。使用该插件能够使得账户提升权限执行存储的程序和视图,而不会将这些权限暴露给普通用户。还可以禁止账户直接登录,只允许通过代理帐户访问。

此外,在MySQL的企业版中,提供了PAM、LDAP、Windows 认证、Kerberos、FIDO等插件。

  • PAM:在Linux和MacOS上提供,通过一个标准接口访问多种认证方法,例如传统的Unix密码或LDAP目录。

  • LDAP:通过目录服务认证mysql用户,例如, X.500。MySQL通过LDAP 找回用户、凭据,及组信息。

  • Windows认证:支持在Windows上执行外部认证的认证方法,使MySQL Server能够使用本地Windows服务对客户端连接进行认证。登录Windows的用户可以根据其环境中的信息从MySQL客户端程序连接到服务器,而无需指定额外的密码。

  • Kerbeors:该方法允许用户在可以获得适当的Kerberos票据时,使用Kerberos对MySQL Server进行身份验证。

  • FIDO:允许用户使用FIDO身份验证到MySQL服务器。FIDO代表快速在线身份,它提供了不需要使用密码的身份验证标准。允许使用智能卡、安全密钥和生物识别阅读器等设备对MySQL服务器进行身份验证。由于可以通过提供密码以外的方式进行身份验证,因此FIDO支持无密码身份验证。对于使用多因素身份验证的MySQL户,可以使用FIDO身份验证,效果很好。

以上内容是关于认证插件的介绍,感谢关注“MySQL解决方案工程师”!



免责声明:

1、本站资源由自动抓取工具收集整理于网络。

2、本站不承担由于内容的合法性及真实性所引起的一切争议和法律责任。

3、电子书、小说等仅供网友预览使用,书籍版权归作者或出版社所有。

4、如作者、出版社认为资源涉及侵权,请联系本站,本站将在收到通知书后尽快删除您认为侵权的作品。

5、如果您喜欢本资源,请您支持作者,购买正版内容。

6、资源失效,请下方留言,欢迎分享资源链接

文章评论

0条评论