【问题标题】:Greenplum/Postgresql Can I grant a user truncate privileges on tables start with tmp_?Greenplum/Postgresql 我可以授予用户对以 tmp_ 开头的表的截断权限吗?
【发布时间】:2020-04-21 21:17:21
【问题描述】:

我想创建一个用户:etl_user 来执行 etl 工作,所以我授予 etl_user 选择、更新、插入权限,但有时也需要截断,但为了安全起见,我只想在特定表上授予截断权限,例如表名以 tmp_ 开头。

有什么想法吗?提前致谢。

【问题讨论】:

  • 将 foo 上的截断授予 craig;这只是一个普通的授权声明。
  • Greenplum 还是 Postgres?尽管它们共享一些代码,但它们是非常不同的东西。

标签: postgresql greenplum


【解决方案1】:

通常在这种情况下,bash 会有所帮助

for tbl in `psql -qAt -c "select schemaname || '.' || tablename
    from pg_tables
    where tablename like 'tmp_%';" -d database_name`; 
do 
    psql -c "grant truncate on $tbl to etl_user" -d database_name ; 
done

【讨论】:

  • 谢谢,但是我希望可以自动将带有 tmp_ 前缀的新表授予 etl_user
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-28
  • 2013-11-17
  • 2014-05-06
  • 2018-11-12
相关资源
最近更新 更多