Require the issuer of CREATE TYPE to own the functions mentioned in the

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 1564e92cea27a22ace7da635fe73fc23f96f8d4e
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2006-01-13T18:06:45Z
Releases: 8.2.0
Require the issuer of CREATE TYPE to own the functions mentioned in the
type definition.  Because use of a type's I/O conversion functions isn't
access-checked, CREATE TYPE amounts to granting public execute permissions
on the functions, and so allowing it to anybody means that someone could
theoretically gain access to a function he's not supposed to be able to
execute.  The parameter-type restrictions already enforced by CREATE TYPE
make it fairly unlikely that this oversight is meaningful in practice,
but still it seems like a good idea to plug the hole going forward.
Also, document the implicit grant just in case anybody gets the idea of
building I/O functions that might need security restrictions.

Files

PathChange+/−
doc/src/sgml/ref/create_type.sgml modified +12 −1
src/backend/commands/typecmds.c modified +25 −1