如何创建一个具有只读访问权限的Redshift用户?

4

我正在尝试找到一种方法来创建一个用户,该用户将对Redshift中所有现有和新创建的模式具有只读访问权限。

这是否有可能?

1个回答

3
我正在尝试寻找一种方法来创建一个用户,该用户将对Redshift中的所有现有和新创建的模式进行只读访问。 是和否 - 是指只读访问权限,否则将无法自动更改用户对新模式的访问权限为只读。 要创建只读用户,请将用户添加到仅具有指定数据库的特定模式的只读权限组中。 请注意,您仍然必须最初手动指定所有模式名称,并随后修改任何可能创建的新模式的组。 然而,好消息是,不需要运行任何程序以便在现有模式中添加新表时维护权限,因为下面的内容还将更改默认权限。 我正在使用“readonly_schema”作为模式名称,但如果使用默认的Amazon Redshift模式,请使用“public”。
CREATE GROUP readonly_group;
REVOKE CREATE ON SCHEMA "readonly_schema" FROM GROUP readonly_group;
GRANT USAGE ON SCHEMA "readonly_schema" TO GROUP readonly_group;
GRANT SELECT ON ALL TABLES IN SCHEMA "readonly_schema" TO GROUP readonly_group;
ALTER DEFAULT PRIVILEGES IN SCHEMA "readonly_schema" GRANT SELECT ON TABLES TO GROUP readonly_group;
CREATE USER readonly_user WITH PASSWORD supersafepassword;
ALTER GROUP readonly_group ADD USER readonly_user;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接