mysql - 为表中的用户授予选择?

标签 mysql view sql-grant

是否可以为表中存在的用户列表授予查看权限?

我有一个 View MY_VIEW 我有一个USER池。 一些 USER 位于表 HAS_PERMISSION(NAME , ID) 中 一些 USER 位于表 NO_ACCESS(NAME, ID) 中。

不存在交叉,每个表中的行列表可能会随着时间的推移而增加或减少。我尝试过类似的事情:

GRANT SELECT ON MY_VIEW TO
(SELECT PERSON FROM HAS_PERMISSION WHERE NAME = USER) ;

但我在第 2 行被告知错误: ORA-00987: 用户名缺失或无效

最佳答案

那是行不通的。如果这有什么作用的话,它只是授予 MySQL 用户权限。但是,希望您的人员不要直接连接到数据库,而是使用您构建的应用程序,该应用程序拥有自己的用户(不应是 root/admin)。您的应用程序应该检查用户的权限,并决定该用户是否可以访问应用程序中使用 View 的页面。

关于mysql - 为表中的用户授予选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41637989/

相关文章:

postgresql - Postgres GRANT 未应用于父级

mysql - 在另一个范围内重用多个范围以在 Rails 中创建搜索多个字段

mysql - 服务堆栈 OrmLite : JSON fild deserialization Issue

android - 使组件填充屏幕上的所有可用空间

grails - Grails JSON渲染器未公开拦截器模型

mysql - 无法使用 root(或任何帐户)在 MySQL 中授予权限 - "Access denied for user ' root'@'localhost' "

mysql - 如何为用户授予对mysql服务器的远程访问权限?

MySQL:如何按日期每n天选择行

mysql - 如何在 MySQL 中返回数据透视表输出?

python - Django 以字符串形式获取当前 View 的名称