格兰特选择表中的用户?

时间:2017-01-13 15:27:00

标签: mysql views grant

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

我有一个观点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) ;

但我被告知ERROR at line 2: ORA-00987: missing or invalid username(s)

1 个答案:

答案 0 :(得分:1)

那不行。如果这样做了,它只会给MySQL用户许可。但是,希望您的人员不直接连接到数据库,而是使用您构建的具有自己用户的应用程序(不应该是root / admin)。您的应用程序应检查用户的权限,并确定该人是否可以访问使用该视图的应用程序中的页面。