schema | name | column | data type |
---|---|---|---|
pg_catalog | svv_rls_attached_policy | grantee | varchar(128) |
pg_catalog | svv_rls_attached_policy | granteekind | varchar(6) |
pg_catalog | svv_rls_attached_policy | grantor | varchar(128) |
pg_catalog | svv_rls_attached_policy | is_pol_on | bool |
pg_catalog | svv_rls_attached_policy | is_rls_on | bool |
pg_catalog | svv_rls_attached_policy | polname | varchar(128) |
pg_catalog | svv_rls_attached_policy | relkind | varchar(17) |
pg_catalog | svv_rls_attached_policy | relname | varchar(128) |
pg_catalog | svv_rls_attached_policy | relschema | varchar(128) |
SELECT derived_table14.relschema, derived_table14.relname, derived_table14.relkind, derived_table14.polname, derived_table14.grantor, derived_table14.grantee, derived_table14.granteekind, derived_table14.is_pol_on, derived_table14.is_rls_on FROM ((SELECT p.relschema, p.relname, p.relkind, p.polname, CAST(o.usename AS varchar) AS grantor, CAST(e.usename AS varchar) AS grantee, CAST('user' AS varchar) AS granteekind, p.is_pol_on, p.is_rls_on FROM (SELECT CAST(n.nspname AS varchar(128)) AS relschema, CAST(c.relname AS varchar(128)) AS relname, CAST(CASE WHEN c.relkind = CAST('r' AS "char") THEN CAST('table' AS text) WHEN c.relkind = CAST('v' AS "char") THEN CASE WHEN e_mv.value IS NOT NULL THEN CAST('materialized view' AS text) ELSE CAST('view' AS text) END ELSE CAST('unknown' AS text) END AS varchar(17)) AS relkind, CAST(p.polname AS varchar(128)) AS polname, TRUE AS is_pol_on, COALESCE(e_rls.value = CAST('1' AS text), FALSE) AS is_rls_on, p.polid, c.oid AS relid, r.permid FROM pg_policy AS p INNER JOIN pg_permission AS r ON r.privid = p.polid AND r.privtype = 4 INNER JOIN pg_class AS c ON c.oid = r.objid INNER JOIN pg_namespace AS n ON n.oid = c.relnamespace LEFT JOIN pg_class_extended AS e_rls ON e_rls.reloid = c.oid AND e_rls.colnum = 20 LEFT JOIN pg_class_extended AS e_mv ON e_mv.reloid = c.oid AND e_mv.colnum = 6) AS p INNER JOIN pg_user_permission AS up ON up.permid = p.permid INNER JOIN pg_identity AS e ON e.useid = up.userid LEFT JOIN pg_identity AS o ON o.useid = rls_get_attached_user_grantor(p.polid, p.relid, up.userid) UNION SELECT p.relschema, p.relname, p.relkind, p.polname, CAST(o.usename AS varchar) AS grantor, CAST(e.rolname AS varchar) AS grantee, CAST('role' AS varchar) AS granteekind, p.is_pol_on, p.is_rls_on FROM (SELECT CAST(n.nspname AS varchar(128)) AS relschema, CAST(c.relname AS varchar(128)) AS relname, CAST(CASE WHEN c.relkind = CAST('r' AS "char") THEN CAST('table' AS text) WHEN c.relkind = CAST('v' AS "char") THEN CASE WHEN e_mv.value IS NOT NULL THEN CAST('materialized view' AS text) ELSE CAST('view' AS text) END ELSE CAST('unknown' AS text) END AS varchar(17)) AS relkind, CAST(p.polname AS varchar(128)) AS polname, TRUE AS is_pol_on, COALESCE(e_rls.value = CAST('1' AS text), FALSE) AS is_rls_on, p.polid, c.oid AS relid, r.permid FROM pg_policy AS p INNER JOIN pg_permission AS r ON r.privid = p.polid AND r.privtype = 4 INNER JOIN pg_class AS c ON c.oid = r.objid INNER JOIN pg_namespace AS n ON n.oid = c.relnamespace LEFT JOIN pg_class_extended AS e_rls ON e_rls.reloid = c.oid AND e_rls.colnum = 20 LEFT JOIN pg_class_extended AS e_mv ON e_mv.reloid = c.oid AND e_mv.colnum = 6) AS p INNER JOIN pg_role_permission AS rp ON rp.permid = p.permid INNER JOIN pg_role AS e ON e.rolid = rp.roleid LEFT JOIN pg_identity AS o ON o.useid = rls_get_attached_role_grantor(p.polid, p.relid, rp.roleid)) UNION SELECT p.relschema, p.relname, p.relkind, p.polname, CAST(o.usename AS varchar) AS grantor, CAST('public' AS varchar) AS grantee, CAST('public' AS varchar) AS granteekind, p.is_pol_on, p.is_rls_on FROM (SELECT CAST(n.nspname AS varchar(128)) AS relschema, CAST(c.relname AS varchar(128)) AS relname, CAST(CASE WHEN c.relkind = CAST('r' AS "char") THEN CAST('table' AS text) WHEN c.relkind = CAST('v' AS "char") THEN CASE WHEN e_mv.value IS NOT NULL THEN CAST('materialized view' AS text) ELSE CAST('view' AS text) END ELSE CAST('unknown' AS text) END AS varchar(17)) AS relkind, CAST(p.polname AS varchar(128)) AS polname, TRUE AS is_pol_on, COALESCE(e_rls.value = CAST('1' AS text), FALSE) AS is_rls_on, p.polid, c.oid AS relid, r.permid FROM pg_policy AS p INNER JOIN pg_permission AS r ON r.privid = p.polid AND r.privtype = 4 INNER JOIN pg_class AS c ON c.oid = r.objid INNER JOIN pg_namespace AS n ON n.oid = c.relnamespace LEFT JOIN pg_class_extended AS e_rls ON e_rls.reloid = c.oid AND e_rls.colnum = 20 LEFT JOIN pg_class_extended AS e_mv ON e_mv.reloid = c.oid AND e_mv.colnum = 6) AS p LEFT JOIN pg_identity AS o ON o.useid = rls_get_attached_user_grantor(p.polid, p.relid, 0) WHERE is_rls_attached_to_public(p.polid, p.relid)) AS derived_table14 WHERE EXISTS (SELECT 1 FROM pg_identity WHERE pg_identity.useid = current_user_id() AND pg_identity.usesuper = TRUE) OR user_is_member_of(CAST("current_user"() AS name), CAST('sys:secadmin' AS name))
Home 3D Друк Blog Bring-Up Times Consultancy Cross-Region Benchmarks Email Forums IRC Mailing Lists Reddit Redshift Price Tracker Redshift Version Tracker Redshift Workbench System Table Tracker The Known Universe Twitter White Papers