【问题标题】:Role creation with knexjs使用 knexjs 创建角色
【发布时间】:2018-02-26 15:10:20
【问题描述】:

我是 PostgreSQL 和节点的新手。我正在使用 knex.js 库。我需要创建角色并将其分配给我在 PostgreSQL 中创建的每个表。我不确定如何实现它。是在表迁移的时候做的吗?或者我可以在迁移后做吗?如果是这样,我该怎么做?

【问题讨论】:

  • knex.raw('create user blah password 'blah-blah') 如果您的 knex postgres 用户拥有 CREATE ROLE privs
  • 如何将此用户角色特权添加到我的表中?

标签: node.js postgresql database-migration knex.js postgresql-9.6


【解决方案1】:

我没有使用 knex 的经验,但我想你可以使用

knex.raw('create user blah password 'blah-blah') 

创建用户。当然,您的 knex postgres 用户需要CREATE ROLE privs。

将已创建表的权限分配给用户可能与我想的相同,例如:

knex.raw('grant select, update on table blah_blah to user blah') 

这应该不需要 knex db 用户的任何额外权限,因为它创建表,因此是所有者。

【讨论】:

    【解决方案2】:

    正如其他人所提到的,您需要使用knex.raw 和原始 SQL 语句(在本例中为 postgresql 风格)。 Knex 没有任何支持设置角色的特殊 API。

    【讨论】:

      猜你喜欢
      • 2021-09-16
      • 2021-07-20
      • 2021-02-06
      • 1970-01-01
      • 1970-01-01
      • 2021-05-05
      • 2019-04-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多