定义者可以是角色而不是用户吗?

krugob8w  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(246)

在mssql中,我习惯于使用角色来实现安全性和权限,但在mysql/mariadb中,用户似乎是一个你无法真正绕过的主要角色。我想知道的一个具体情况是视图或存储过程的定义者。在我的例子中,如果不知道该对象应该作为什么用户提前运行,我基本上无法编写该对象的脚本。有没有办法用特定的角色而不是用户来定义它?

hgtggwj0

hgtggwj01#

你可以用

CREATE DEFINER=`your role` PROCEDURE / FUNCTION ()
    SQL SECURITY DEFINER -- that's the default
begin
    ....
end

“您的角色”必须具有过程的执行权限以及过程中所需的所有权限。

相关问题