我们为用户运行了几十台不同的 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
答案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/