CREATE CAST WITHOUT FUNCTION should require superuserness? - Mailing list pgsql-hackers

From Tom Lane
Subject CREATE CAST WITHOUT FUNCTION should require superuserness?
Date
Msg-id 26415.1029789357@sss.pgh.pa.us
Whole thread Raw
Responses Re: CREATE CAST WITHOUT FUNCTION should require superuserness?  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
CREATE CAST WITHOUT FUNCTION is capable of creating binary equivalences
that will crash the backend when used (eg, between pass-by-value and
pass-by-reference datatypes).  The existing restriction that you must
own one of the datatypes hardly seems like an adequate permissions
check ... especially since any unprivileged user is able to create his
own datatypes.

I think it might be a good idea to require superuser permissions to
create a binary-equivalence cast.  This is equivalent to the permissions
you'd need to create a dummy C function so as to cause the same failure
without using WITHOUT FUNCTION.  Comments?

Also, in the present state of the code a WITHOUT FUNCTION cast does
not work if AS ASSIGNMENT isn't given: parse_coerce.c won't ever find
it.  Is this intentional, or just an oversight?
        regards, tom lane


pgsql-hackers by date:

Previous
From: "Andrew J. Kopciuch"
Date:
Subject: ignore me
Next
From: ngpg@grymmjack.com
Date:
Subject: Re: [SECURITY] DoS attack on backend possible