## 31.7.保安 能够修改订阅服务器端表模式的用户可以作为超级用户执行任意代码。限制所有权和`触发`在这些表上授予超级用户信任的角色的权限。此外,如果不受信任的用户可以创建表,请仅使用明确列出表的发布。也就是说,创建订阅`所有的桌子`仅当超级用户信任每个被允许在发布服务器或订阅服务器上创建非临时表的用户时。 用于复制连接的角色必须具有`复制`属性(或成为超级用户)。如果角色缺乏`超级用户`和`绕过RLS`,可以执行发布者行安全策略。如果角色不信任所有表所有者,请包括`选项=-crow_security=off`在连接字符串中;如果表所有者随后添加了行安全策略,则该设置将导致复制停止,而不是执行该策略。必须在中配置角色的访问权限`pg_hba。形态`它必须有`登录`属性 为了能够复制初始表数据,用于复制连接的角色必须具有`选择`对已发布表的权限(或成为超级用户)。 要创建出版物,用户必须具有`创造`数据库中的权限。 要向发布中添加表,用户必须对表拥有所有权。要创建自动发布所有表的发布,用户必须是超级用户。 要创建订阅,用户必须是超级用户。 订阅应用进程将以超级用户的权限在本地数据库中运行。 权限仅在复制连接开始时检查一次。在从发布者读取每个更改记录时,不会重新检查它们,也不会在应用每个更改时重新检查它们。