vertica 中的用户限制
User restriction in vertica
我在 vertica 中有一些 public 函数。我想在 vertica 中创建一个只读用户,他只能访问定义模式中的数据 tables 而不能访问 v_catalog(Information_schema) 列出所有 table名字。是否有可能在 vertica 中创建一个用户,该用户可以被限制使用任何系统命令,但可以访问 public 函数和 UDFS 并在定义的模式中仅执行 select 命令。
如果您创建一个用户,则该用户被授予的唯一角色是 PUBLIC
。
授予 PUBLIC
的所有内容都将授予新用户。
新用户登录后,如果不存在授予 PUBLIC
的 table,SELECT * FROM v_catalog.tables;
将 return 为空 table.
如果我是你,我会创建一个用户,作为 dbadmin:
CREATE USER marvin IDENTIFIED BY 'heart_of_gold';
然后,我将以该用户身份登录:
vsql -U marvin -w heart_of_gold -h 00.000.000.00 -d dbname
然后,尝试各种查询,看看我可以做什么;然后以 dbadmin 身份重新登录,将一些东西授予 marvin,看看会发生什么。
并查看有关 GRANT
命令的 Vertica 文档,了解可以授予和撤销的内容。我就是这样做的,直到我对自己想要实现的目标充满信心为止..
祝你好运,玩的开心
我在 vertica 中有一些 public 函数。我想在 vertica 中创建一个只读用户,他只能访问定义模式中的数据 tables 而不能访问 v_catalog(Information_schema) 列出所有 table名字。是否有可能在 vertica 中创建一个用户,该用户可以被限制使用任何系统命令,但可以访问 public 函数和 UDFS 并在定义的模式中仅执行 select 命令。
如果您创建一个用户,则该用户被授予的唯一角色是 PUBLIC
。
授予 PUBLIC
的所有内容都将授予新用户。
新用户登录后,如果不存在授予 PUBLIC
的 table,SELECT * FROM v_catalog.tables;
将 return 为空 table.
如果我是你,我会创建一个用户,作为 dbadmin:
CREATE USER marvin IDENTIFIED BY 'heart_of_gold';
然后,我将以该用户身份登录:
vsql -U marvin -w heart_of_gold -h 00.000.000.00 -d dbname
然后,尝试各种查询,看看我可以做什么;然后以 dbadmin 身份重新登录,将一些东西授予 marvin,看看会发生什么。
并查看有关 GRANT
命令的 Vertica 文档,了解可以授予和撤销的内容。我就是这样做的,直到我对自己想要实现的目标充满信心为止..
祝你好运,玩的开心