在 Vertica 中,将 V_CATALOG 和 V_MONITOR 中所有系统表的 SELECT 权限授予 PUBLIC。因此,默认情况下所有用户都可以查询它们。并非所有系统表似乎都适合公开。
在大多数情况下,对于每个条目,结果似乎适当地仅限于用户特定的授权。例如,select * from v_catalog.columns;
只返回用户已被授予 SELECT 表和 USAGE 模式的列,幸运的是SELECT * FROM v_catalog.passwords;
根本不返回任何行。
但是,有些似乎过于宽泛,例如SELECT * FROM v_catalog.users
返回所有模式的所有用户。
REVOKE SELECT ON v_catalog.users
对于打算仅对特定模式中的特定表具有 SELECT 访问权限的用户来说,有什么缺点吗?或者进一步完全为公共用户撤销对 V_CATALOG 和 V_MONITOR 的 SELECT?