From 752728351c7f600cb8b2ae053f0ad27223c3faa1 Mon Sep 17 00:00:00 2001 From: Isaac Morland Date: Sun, 18 Mar 2018 16:17:25 -0400 Subject: [PATCH] Change matview refresh and related authorization checking to check for truncate permission rather than ownership. --- src/backend/commands/tablecmds.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c index 218224a..8c42331 100644 --- a/src/backend/commands/tablecmds.c +++ b/src/backend/commands/tablecmds.c @@ -13190,8 +13190,8 @@ RangeVarCallbackOwnsTable(const RangeVar *relation, errmsg("\"%s\" is not a table or materialized view", relation->relname))); /* Check permissions */ - if (!pg_class_ownercheck(relId, GetUserId())) - aclcheck_error(ACLCHECK_NOT_OWNER, get_relkind_objtype(get_rel_relkind(relId)), relation->relname); + if (pg_class_aclcheck(relId, GetUserId(), ACL_TRUNCATE) != ACLCHECK_OK) + aclcheck_error(ACLCHECK_NO_PRIV, get_relkind_objtype(get_rel_relkind(relId)), relation->relname); } /* -- 2.6.4 (Apple Git-63)