Re: REASSIGN OWNED lacks support for FDWs - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: REASSIGN OWNED lacks support for FDWs
Date
Msg-id 1329942288-sup-2388@alvh.no-ip.org
Whole thread Raw
In response to Re: REASSIGN OWNED lacks support for FDWs  (Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>)
Responses Re: REASSIGN OWNED lacks support for FDWs
List pgsql-hackers
Excerpts from Etsuro Fujita's message of mié feb 22 05:37:36 -0300 2012:

> I did some tests.  The results look good to me.  Please find attached a
> logfile.

Thanks.

> My only concern on the patch is
>
> +static void
> +AlterForeignServerOwner_internal(Relation rel, HeapTuple tup, Oid
> newOwnerId)
> +{
> +    Form_pg_foreign_server form;
>
> -    srvId = HeapTupleGetOid(tup);
>      form = (Form_pg_foreign_server) GETSTRUCT(tup);
>
>      if (form->srvowner != newOwnerId)
> @@ -366,10 +388,15 @@ AlterForeignServerOwner(const char *name, Oid
> newOwnerId)
>          /* Superusers can always do it */
>          if (!superuser())
>          {
>
> I wonder if superusers can always do it.  For example, is it OK for
> superusers to change the ownership of a foreign server owned by old_role
> to new_role that doesn't have USAGE privilege on its foreign data wrapper.

Well, permission checking are just what they were before the patch.  I
did not change them here.  I didn't participate in the discussions that
led to the current behavior, but as far as I know the guiding principle
here is that superusers always can do whatever they please.  Maybe what
you point out is a bug in the behavior (both before and after my patch),
but if so, please raise it separately.

--
Álvaro Herrera <alvherre@commandprompt.com>
The PostgreSQL Company - Command Prompt, Inc.
PostgreSQL Replication, Consulting, Custom Development, 24x7 support


pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: pg_upgrade --logfile option documentation
Next
From: Andrew Dunstan
Date:
Subject: Re: determining a type oid from the name