是否可以为表中存在的用户列表授予查看权限?
我有一个观点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)
答案 0 :(得分:1)
那不行。如果这样做了,它只会给MySQL用户许可。但是,希望您的人员不直接连接到数据库,而是使用您构建的具有自己用户的应用程序(不应该是root / admin)。您的应用程序应检查用户的权限,并确定该人是否可以访问使用该视图的应用程序中的页面。