Revert MAINTAIN privilege and pg_maintain predefined role.
authorNathan Bossart <nathan@postgresql.org>
Fri, 7 Jul 2023 18:25:13 +0000 (11:25 -0700)
committerNathan Bossart <nathan@postgresql.org>
Fri, 7 Jul 2023 18:25:13 +0000 (11:25 -0700)
commit151c22deee66a3390ca9a1c3675e29de54ae73fc
treee53584f9b07a0417e0f46d89aaba08d24b591a06
parentec99d6e9c87a8ff0f4805cc0c6c12cbb89c48e06
Revert MAINTAIN privilege and pg_maintain predefined role.

This reverts the following commits: 4dbdb82513c2122aae63,
5b1a8799439e1e9d6560ff9618e82a60684dd8344441fc704d,
and b5d6382496.  A role with the MAINTAIN privilege may be able to
use search_path tricks to escalate privileges to the table owner.
Unfortunately, it is too late in the v16 development cycle to apply
the proposed fix, i.e., restricting search_path when running
maintenance commands.

Bumps catversion.

Reviewed-by: Jeff Davis
Discussion: https://postgr.es/m/E1q7j7Y-000z1H-Hr%40gemulon.postgresql.org
Backpatch-through: 16
41 files changed:
doc/src/sgml/ddl.sgml
doc/src/sgml/func.sgml
doc/src/sgml/ref/alter_default_privileges.sgml
doc/src/sgml/ref/analyze.sgml
doc/src/sgml/ref/cluster.sgml
doc/src/sgml/ref/grant.sgml
doc/src/sgml/ref/lock.sgml
doc/src/sgml/ref/refresh_materialized_view.sgml
doc/src/sgml/ref/reindex.sgml
doc/src/sgml/ref/revoke.sgml
doc/src/sgml/ref/vacuum.sgml
doc/src/sgml/user-manag.sgml
src/backend/catalog/aclchk.c
src/backend/commands/analyze.c
src/backend/commands/cluster.c
src/backend/commands/indexcmds.c
src/backend/commands/lockcmds.c
src/backend/commands/matview.c
src/backend/commands/tablecmds.c
src/backend/commands/vacuum.c
src/backend/utils/adt/acl.c
src/bin/pg_dump/dumputils.c
src/bin/pg_dump/t/002_pg_dump.pl
src/bin/psql/tab-complete.c
src/include/catalog/catversion.h
src/include/catalog/pg_authid.dat
src/include/commands/tablecmds.h
src/include/commands/vacuum.h
src/include/nodes/parsenodes.h
src/include/utils/acl.h
src/test/isolation/expected/cluster-conflict-partition.out
src/test/isolation/specs/cluster-conflict-partition.spec
src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm
src/test/regress/expected/cluster.out
src/test/regress/expected/create_index.out
src/test/regress/expected/dependency.out
src/test/regress/expected/privileges.out
src/test/regress/expected/rowsecurity.out
src/test/regress/sql/cluster.sql
src/test/regress/sql/dependency.sql
src/test/regress/sql/privileges.sql