在MySQL中,有没有办法以特定用户的身份执行查询来测试表权限?当您使用更高权限的帐户连接时,有没有办法模拟用户执行上下文?
在MSSQL世界中,可以使用EXECUTE AS login = 'username',然后使用SQL语句,最后使用REVERT来关闭模拟。
在MySQL中有类似的东西吗?
发布于 2013-09-13 14:02:18
就我个人而言,我以前从未尝试过,但您可以从MySQL 5.5.7开始看看可用的"Mysql Proxy User“
为了特权检查的目的,插件可以请求将连接的(外部)用户视为不同的用户(
)。这使得外部用户能够成为第二个用户的代理;也就是说,拥有第二个用户的特权。换句话说,外部用户是“代理用户”(可以冒充或成为另一个用户的用户),第二个用户是“代理用户”(其身份可以由代理用户承担)。
您还可以编写自己的authentication plugins for proxy users
..。这是另一篇解释这种行为的帖子"MySQL Proxy Users – SU emulation“
发布于 2016-04-15 04:54:47
您必须转到主页,更改本地实例或您正在使用的任何架构的设置。在这里,您需要更改用户名。如果您希望在使用凭据登录的位置运行查询,并希望使用其他凭据运行其他查询,请检查MySQL中的“代理用户”。
我希望这能帮到你。
https://stackoverflow.com/questions/18775836
复制相似问题