我正在使用MariaDB,我想归档的是根据当前设置的角色限制遗留用户表的输出。(普通用户只能看到自己的数据,团队领导可以看到团队成员的数据,管理层可以看到所有数据)。
SELECT * FROM USERS WHERE user = session_user() or current_role() = 'CEO'
这作为一个语句可以很好地工作,但在视图定义中就不像USER()与SESSION_USER()的问题那样了。
有什么办法可以解决这个问题吗?我也愿意接受完全不同的方法。谢谢。
使用information_schema.enabled_roles也不起作用。
基本问题可通过以下步骤重现:创建“CEO”角色;设置角色“CEO”;
选择当前角色();- 〉“首席执行官”
创建视图测试角色作为SELECT当前角色();
从测试角色中选择 *;
- 〉无效
由具有完全授予权限的用户执行;
1条答案
按热度按时间exdqitrt1#
看起来你用的是很老的版本,这个问题是很久以前的fixed。
工作正常。