【问题标题】:Grant Select for users from a table?从表中为用户授予选择?
【发布时间】:2017-01-13 15:27:00
【问题描述】:

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

我有一个视图 MY_VIEW 我有一个USERs 池。 一些USERs 在表中HAS_PERMISSION(NAME , ID) 一些USERs 在表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)

【问题讨论】:

  • 我认为这不可能。

标签: mysql views sql-grant


【解决方案1】:

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

【讨论】:

  • 该死的,谢谢。谢天谢地,这是一个虚构的程序。我将不得不在视图的 select 语句主体本身中写入一些内容,如果他们与正确的表匹配,则可以访问作为用户的人。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-14
  • 2012-12-05
  • 1970-01-01
  • 2017-07-06
  • 2014-08-10
  • 2013-09-06
相关资源
最近更新 更多