From df2361c5a0dbde431781be2dcdf961ca30ab8ce5 Mon Sep 17 00:00:00 2001 From: Dean Rasheed Date: Fri, 24 Nov 2017 12:00:00 +0000 Subject: [PATCH] Doc: add a summary table to the CREATE POLICY docs. This table summarizes which RLS policy expressions apply to each command type, and whether they apply to the old or new tuples (or both), which saves reading through a lot of text. Rod Taylor, hacked on by me. Reviewed by Fabien Coelho. Discussion: https://postgr.es/m/CAHz80e4HxJShm6m9ZWFrHW=pgd2KP=RZmfFnEccujtPMiAOW5Q@mail.gmail.com --- doc/src/sgml/ref/create_policy.sgml | 104 +++++++++++++++++++++++++++- 1 file changed, 103 insertions(+), 1 deletion(-) diff --git a/doc/src/sgml/ref/create_policy.sgml b/doc/src/sgml/ref/create_policy.sgml index 0c5cd06518..564a16994d 100644 --- a/doc/src/sgml/ref/create_policy.sgml +++ b/doc/src/sgml/ref/create_policy.sgml @@ -72,7 +72,10 @@ CREATE POLICY name ON Policies can be applied for specific commands or for specific roles. The default for newly created policies is that they apply for all commands and - roles, unless otherwise specified. + roles, unless otherwise specified. Multiple policies may apply to a single + command; see below for more details. + summarizes how the different types + of policy apply to specific commands. @@ -353,6 +356,105 @@ CREATE POLICY name ON + + + Policies Applied by Command Type + + + + + + + Command + SELECT/ALL policy + INSERT/ALL policy + UPDATE/ALL policy + DELETE/ALL policy + + + USING expression + WITH CHECK expression + USING expression + WITH CHECK expression + USING expression + + + + + SELECT + Existing row + + + + + + + SELECT FOR UPDATE/SHARE + Existing row + + Existing row + + + + + INSERT + + New row + + + + + + INSERT ... RETURNING + + New row + + + If read access is required to the existing or new row (for example, + a WHERE or RETURNING clause + that refers to columns from the relation). + + + + New row + + + + + + UPDATE + + Existing & new rows + + + + Existing row + New row + + + + DELETE + + Existing row + + + + + + Existing row + + + ON CONFLICT DO UPDATE + Existing & new rows + + Existing row + New row + + + + +
+ -- 2.40.0