使用mysql-proxy来操作登录信息

时间:2012-11-14 03:23:23

标签: mysql mysql-proxy

是否可以在mysql-proxy的lua脚本中拦截和更改登录信息。

例如,如果用户要按照以下方式命中代理:

mysql -h localhost -P 4040 -u bob -D orders -p

我希望连接不仅可以重定向到后端服务器,而且还可以更改用户名/数据库名称,以便上面的命令相当于:

mysql -h production.server -P 3306 -u bob_production -D bob_orders -p

我注意到,在auth通过后,我似乎只能在脚本中获取auth信息,即使我之前可以获得它,我也看不到轻松注入它的方法。

有没有人知道如何在mysql-proxy或其他解决方案中实现这一点?

1 个答案:

答案 0 :(得分:2)

有可能。在安装包的share / docs目录中,查看教程脚本tutorial-scramble.lua,该示例验证来自远程客户端的散列密码并替换服务器所需的身份验证凭据。

教程示例中使用的函数是:read_auth()

您可能还想监视来自服务器的身份验证响应,可以使用read_auth_result()来完成。