Under privileges for named row types
For named row types, you can grant or revoke the Under privilege, which controls whether users can assign a named row type as the supertype of another named row type in an inheritance hierarchy. The Under privilege is granted to PUBLIC automatically when a named row type is created (except in ANSI-compliant databases). In an ANSI-compliant database, the Under privilege on a named row type is granted to the owner of the type.
To restrict certain users' ability to define a named row type
as a supertype in an inheritance hierarchy, you must first revoke
the Under privilege for PUBLIC and then specify the names of the users
to whom you want to grant the Under privilege. For example, to specify
that only a limited group of users can use the named row type person_t as
a supertype in an inheritance hierarchy, you might execute the following
statements:
REVOKE UNDER ON person_t
FROM PUBLIC;
GRANT UNDER ON person_t
TO howie, jhana, alison
For information about how to use the UNDER clause to create named row types in an inheritance hierarchy, see Type inheritance.