我有一个表customer
,在该表上进行了以下操作:
ALTER TABLE customer FORCE ROW LEVEL SECURITY;
CREATE POLICY customer_rls ON customer USING (false);
但是,进行SELECT * FROM customer
仍会返回所有行。
当前角色是myrole
\dg myrole
List of roles
Role name | Attributes | Member of
-----------+------------+-----------
my_role | | {}
如您所见,它不是超级用户,并且未在其上禁用RLS。
我在做什么错了?
答案 0 :(得分:2)
您忘记为表启用行级安全性。
ALTER TABLE customer enable ROW LEVEL SECURITY;
force
仅确保已启用RLS,否则不会在表上启用RLS。