"Dave Cramer" <Dave@micro-automation.net> writes:
>> Oops. Consider not doing your development work as superuser ;-)
> What is the definition of superuser? most of my users have the ability to
> createdb. This seems to give them superuser priveleges. Is that correct?
Somebody whose 'usesuper' flag is set in pg_shadow is a superuser.
IIRC, the CREATE USER command and createuser script mislabel that
feature as "ability to create other users", but it's really
superuserness. Ability to create databases (usecreatedb flag in
pg_shadow) is a separate attribute that you can grant without granting
superuserness.
Also, you can try turning off 'usecatupd' in pg_shadow to make a
not-quite-so-super user (suffering from effects of exposure to
kryptonite, I suppose) but I am not sure exactly what that does or
how consistently it's applied.
regards, tom lane