Overcoming SELECT ... FOR UPDATE permission restrictions

From: Alexander Lakhin <exclusion(at)gmail(dot)com>
To: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Overcoming SELECT ... FOR UPDATE permission restrictions
Date: 2018-04-13 04:10:01
Message-ID: 24db7b8f-3de5-e25f-7ab9-d8848351d42c@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello hackers,

Can you please explain, is this a bug or intended behaviour?

Running as non-privileged user:

postgres=> SELECT datid, datname FROM pg_stat_database FOR UPDATE;
ERROR: permission denied for view pg_stat_database (SQLState: 42501)

But:

postgres=> CREATE VIEW pgsd AS SELECT * FROM pg_stat_database; SELECT
datid, datname FROM pgsd FOR UPDATE;
CREATE VIEW
 datid |  datname
-------+-----------
 13021 | postgres
     1 | template1
 13020 | template0
(3 rows)

(And lock is really held by the second SELECT.)

Best regards,

------
Alexander Lakhin
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Kyotaro HORIGUCHI 2018-04-13 04:47:51 Re: Problem while setting the fpw with SIGHUP
Previous Message Michael Paquier 2018-04-13 04:01:37 Re: Make description of heap records more talkative for flags