set role qstoolbox;
update contract set contract_reference = 'ok ok ok' where id = 2
上述工作 查詢成功返回:一行受影響,41毫秒執行時間。PostgreSQL無法更新行(具有行級安全性)
set role user_role;
update contract set contract_reference = ':(:(:(' where id = 2
這一個不 查詢成功返回:0行受到影響,31毫秒的執行時間。
權限似乎好,至少它不清楚我在做什麼錯在這裏。
行級別的安全性已被添加到該表
alter table contract enable row level security;
隨着這些政策
create policy view_contract on contract for select using(true);
create policy add_contract on contract for insert to user_role with check(true);
create policy delete_contract on contract for delete to user_role using(true);
create policy change_contract on contract for update to user_role with check(true);
我想我已經這樣做了,已經更新了問題,我也認爲這是在pgadmin屏幕截圖中顯示的內容? – Tim
是的,你正在使用()'。圖片沒有顯示安全策略。 – klin