我经常读到,视图的目的之一是安全性:允许某些用户访问基础表,而其他用户仅访问派生视图。考虑到这一点,我设计了几个向外部用户提供受限数据集的视图。
一切都很好,但在实践中这是行不通的。我授予后SELECT
对视图的权限,除非我授予,否则用户无法访问它SELECT
也适用于所有底层对象。存储过程也是如此。最终结果是不起作用的,因为我最终仍然向错误的用户授予对敏感数据的访问权限,而且很烦人,因为很容易忘记一个对象,并且用户回来抱怨该视图“没有”工作”。
有没有办法授予SELECT
视图或存储过程的权限而不必公开底层对象?
拥有视图的同一用户是否也拥有基础表?如果没有,表的所有者需要向视图所有者授予WITH GRANT OPTION 权限。如果同一用户同时拥有表和视图,则授予视图权限就足够了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)