PostgreSQL 的“连接限制”是否在角色中的所有用户之间共享?

Joh*_*ein 6 postgresql permissions

我创建了一个许多用户可以共享的角色:

> create role foo_read_only connection limit 5;
Run Code Online (Sandbox Code Playgroud)

然后我为该角色分配了权限:

> grant select on table1 to foo_read_only;
Run Code Online (Sandbox Code Playgroud)

然后我将该角色分配给了人们:

> grant foo_read_only to fred;
> grant foo_read_only to ginger;
Run Code Online (Sandbox Code Playgroud)

问题: fred 和ginger 的连接限制是5,还是他们之间共享这个限制?

谢谢!

vor*_*aq7 6

CONNECTION LIMIT属性仅影响能够登录的角色(即“用户”,或具有该LOGIN属性集的那些角色)。

角色是与其他角色的成员CONNECTION LIMIT 不继承这个限制,所以在你上面描述的情况fred,并ginger会为-1(无限制)默认的连接限制。

要限制fredginger您需要专门为CONNECTION LIMIT这些角色设置一个。