我已经构建了全新的 PostgreSQL-9.5 (alpha),我对行级安全的新特性感到非常兴奋。这有望使多角色访问管理更加直接。
例如,到目前为止,我使用了一个模型,其中NOLOGIN
角色是数据库和所有表、视图、函数等的所有者;然后创建视图以授予对特定角色的适当访问权限。一切都很好,但观点确实激增。表上的新CREATE POLICY
命令ENABLE ROW LEVEL SECURITY
看起来是达到相同目的的更清洁的替代方案。
但是,到目前为止,我无法确定哪些表启用了 RLS 以及在它们上定义了哪些策略。(显然,所有这些都是在定义表和策略之后进行的。)是否有一种简单的方法可以识别启用 RLS 的表上的既定策略?
(对于那些感兴趣的人来说,还有期待已久的UPSERT
更多jsonb
功能,以及许多性能改进。)