Remove explicit superuser checks in favor of ACLs
authorStephen Frost <sfrost@snowman.net>
Fri, 6 Apr 2018 18:47:10 +0000 (14:47 -0400)
committerStephen Frost <sfrost@snowman.net>
Fri, 6 Apr 2018 18:47:10 +0000 (14:47 -0400)
commite79350fef2917522571add750e3e21af293b50fe
treebb80d12b6737f52db8499ce50096ea600c900d6a
parent94c1f9ba11d1241a2b3b2be7177604b26b08bc3d
Remove explicit superuser checks in favor of ACLs

This removes the explicit superuser checks in the various file-access
functions in the backend, specifically pg_ls_dir(), pg_read_file(),
pg_read_binary_file(), and pg_stat_file().  Instead, EXECUTE is REVOKE'd
from public for these, meaning that only a superuser is able to run them
by default, but access to them can be GRANT'd to other roles.

Reviewed-By: Michael Paquier
Discussion: https://postgr.es/m/20171231191939.GR2416%40tamriel.snowman.net
src/backend/catalog/system_views.sql
src/backend/utils/adt/genfile.c