Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql Postgres行级策略问题_Postgresql - Fatal编程技术网

Postgresql Postgres行级策略问题

Postgresql Postgres行级策略问题,postgresql,Postgresql,我正在试用Postgres行级别的安全功能,但看不到它在工作。不知道我错过了什么 CREATE TABLE tenants (id uuid PRIMARY KEY, name TEXT); INSERT INTO tenants (id, name) values ('ec5e9a6b-ed71-4e41-bc1e-11dac6808e41', 'Tenant1'), ('a684edc2-19b2-40d6-b679-519a6f736981', 'Tenant2'); ALTER TA

我正在试用Postgres行级别的安全功能,但看不到它在工作。不知道我错过了什么

CREATE TABLE tenants (id uuid PRIMARY KEY, name TEXT);

INSERT INTO tenants (id, name) values ('ec5e9a6b-ed71-4e41-bc1e-11dac6808e41', 'Tenant1'), ('a684edc2-19b2-40d6-b679-519a6f736981', 'Tenant2');

ALTER TABLE tenants ENABLE ROW LEVEL SECURITY ;
ALTER TABLE tenants FORCE ROW LEVEL SECURITY;

SET app.tenant_id = 'ec5e9a6b-ed71-4e41-bc1e-11dac6808e41';

CREATE POLICY tenants_policy ON tenants FOR ALL USING ( current_setting('app.tenant_id')::uuid = id );

SELECT * FROM tenants;

对于最后一次选择,我希望它只返回id为“ec5e9a6b-ed71-4e41-bc1e-11dac6808e41”的一行,但它同时返回两行。我错过了什么?谢谢大家!

你的例子对我很有用。有几种可能性:

当前用户是超级用户

当前用户是通过旁路RLS定义的

配置参数row_security已关闭


你的例子对我很有用。有几种可能性:

当前用户是超级用户

当前用户是通过旁路RLS定义的

配置参数row_security已关闭


这是超级用户facepalm。非常感谢。这是超级用户facepalm。非常感谢。