使用 LDAP 进行 MySQL 身份验证?

使用 LDAP 进行 MySQL 身份验证?

我们为用户运行了几十台不同的 MySQL 服务器。这些服务器使用的是免费/开源版 MySQL,而不是商业版。管理这些服务器上的帐户密码非常麻烦。

是否有任何插件可以让我们使用 LDAP 来帮助管理 MySQL 权限?至少,我们希望从 LDAP 服务器获取一些用户名和密码。

我们正在使用 MySQL 5.1 和 5.5。如果实现此功能需要升级到 MySQL 5.6,我们可能愿意升级到 MySQL 5.6。

我们希望任何工具都是基于 CLI 的,而不需要 GUI 或 Web 界面。

答案1

Enterprise MySQL(您向 Oracle 支付许可费用的版本)具有允许 LDAP 身份验证的 PAM 模块:https://dev.mysql.com/doc/refman/5.5/en/pam-pluggable-authentication.html

MariaDB(Monty 开发的 MySQL 二进制兼容版本)有一个可用的开源 PAM 模块:http://kb.askmonty.org/en/pam-authentication-plugin/

我对这两者都没有实际操作经验 —— 我只是将它们介绍为我听说过但未亲自测试或使用过的功能。

答案2

您可以使用auth_ldapGPL 下 Infoscope Hellas LP 提供的插件。

可以从 sourceforge 下载

主页

该插件仍处于测试阶段,仅适用于 UNIX 安装。

答案3

Mysql 代理可以使用角色为您启用此功能。更多详细信息请参见此处: https://stackoverflow.com/questions/1329963/using-ldap-ad-for-mysql-authenication 和这里: http://jan.kneschke.de/2009/6/25/mysql-proxy-roles/

答案4

我已经在我的博客中发布了 MySQL 的 LDAP 身份验证插件的完整示例(带有源代码)。

http://nafiux.com/blog/2012/08/11/mysql-ldap-authentication-plugin/

相关内容