]> granicus.if.org Git - postgresql/commit
Restrict lo_import()/lo_export() via SQL permissions not hard-wired checks.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 9 Nov 2017 17:36:58 +0000 (12:36 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 9 Nov 2017 17:36:58 +0000 (12:36 -0500)
commit5ecc0d738e5864848bbc2d1d97e56d5846624ba2
tree836cf5b1fc7fb0b953133f3c6dccd3be91c9a795
parent6c3a7ba5bb0f960ed412b1c36e815f53347b3d79
Restrict lo_import()/lo_export() via SQL permissions not hard-wired checks.

While it's generally unwise to give permissions on these functions to
anyone but a superuser, we've been moving away from hard-wired permission
checks inside functions in favor of using the SQL permission system to
control access.  Bring lo_import() and lo_export() into compliance with
that approach.

In particular, this removes the manual configuration option
ALLOW_DANGEROUS_LO_FUNCTIONS.  That dates back to 1999 (commit 4cd4a54c8);
it's unlikely anyone has used it in many years.  Moreover, if you really
want such behavior, now you can get it with GRANT ... TO PUBLIC instead.

Michael Paquier

Discussion: https://postgr.es/m/CAB7nPqRHmNOYbETnc_2EjsuzSM00Z+BWKv9sy6tnvSd5gWT_JA@mail.gmail.com
src/backend/catalog/system_views.sql
src/backend/libpq/be-fsstubs.c
src/include/catalog/catversion.h
src/include/pg_config_manual.h
src/test/regress/expected/privileges.out
src/test/regress/sql/privileges.sql