如何限制用户仅使用其 unix 用户名连接到 MySQL?

如何限制用户仅使用其 unix 用户名连接到 MySQL?

我工作的环境需要确保开发人员仅使用其 Unix 帐户的用户名连接到我们应用程序的 MySQL 数据库。这背后的驱动力是通过 MySQL 常规日志从查询运行追溯到运行它们的用户。到目前为止我还没有找到任何理想的解决方案,我有一些不完美的解决方案,我希望得到一些更好的想法。

开发人员可以访问应用程序使用的凭据(他们可以通过登录主机来访问它们)。我正在研究一种解决方案来限制对凭据的访问,同时仍然使它们可供应用程序使用,但仍然希望确保 MySQL 日志反映运行查询的真实用户。

mysql -u <user>有谁知道我可以限制强制<user>成为登录的unix用户名的方法吗?该数据库托管在 AWS RDS 上,因此我对它没有太多控制权,但我确实可以完全控制mysql连接计算机上的二进制文件。

我很高兴添加更多信息,我只是不确定什么是相关的。请提出问题,我会更新我自己的。

有没有办法做一些事情,比如包装二进制文件以添加逻辑来限制开关-u并调用实际的mysql二进制文件?

答案1

MySQL企业版支持PAM(可插拔身份验证模块)。

本文介绍了如何设置:https://dev.mysql.com/doc/refman/5.5/en/pam-pluggable-authentication.html

缺点是你

  • 需要MySQL商业版
  • 需要访问 MySQL 服务器的配置文件。

如果你没有这个,除了编写一个脚本来复制 MySQL 自己的用户管理中的受信任的 Unix 用户之外,你无能为力。但是,您将无法同步密码。

相关内容