Re: Foreign keys and permissions oddity - Mailing list pgsql-general

From Richard Huxton
Subject Re: Foreign keys and permissions oddity
Date
Msg-id 4C5D0C74.7000006@archonet.com
Whole thread Raw
In response to Foreign keys and permissions oddity  (Joshua Tolley <eggyknap@gmail.com>)
Responses Re: Foreign keys and permissions oddity
List pgsql-general
On 07/08/10 01:13, Joshua Tolley wrote:
> Is there some justification for this behavior that I should know already? It
> seemed awfully strange when some folkds here stumbled on it:
[snip]
> The key point seems to be that the owner of the referenced table has no
> permissions on the table, although the referencing user does.

Presumably the underlying trigger functions are executing as the owner
of the table. This would make sense in the (more common) case that you
want to reference a table you don't necessarily have full read access
for (e.g. member-id vs the whole row including address/phone).

You should be able to track the table's OID from pg_class through to
tgrelid on pg_trigger and then tdfoid to the relevant OIDs in pg_proc.
The functions are all named as RI_FKey_xxx.

Hmm - not sure if they execute as the table owner or the creator of the
constraint. You could justify either, but of course they're frequently
the same (as in your case).

--
   Richard Huxton
   Archonet Ltd

pgsql-general by date:

Previous
From: Sandeep Srinivasa
Date:
Subject: Re: MySQL versus Postgres
Next
From: Alban Hertroys
Date:
Subject: Re: MySQL versus Postgres