pg_authid

The pg_authid table contains information about database authorization identifiers (roles). A role subsumes the concepts of users and groups. A user is a role with the rolcanlogin flag set. Any role (with or without rolcanlogin) may have other roles as members. See pg_auth_members.

Since this catalog contains passwords, it must not be publicly readable. pg_roles is a publicly readable view on pg_authid that blanks out the password field.

Because user identities are system-wide, pg_authid is shared across all databases in a HAWQ system: there is only one copy of pg_authid per system, not one per database.

Table 1. pg_catalog.pg_authid

columntypereferencesdescription
rolnamename Role name
rolsuperboolean Role has superuser privileges
rolinheritboolean Role automatically inherits privileges of roles it is a member of
rolcreateroleboolean Role may create more roles
rolcreatedbboolean Role may create databases
rolcatupdateboolean Role may update system catalogs directly. (Even a superuser may not do this unless this column is true)
rolcanloginboolean Role may log in. That is, this role can be given as the initial session authorization identifier
rolconnlimitint4 For roles that can log in, this sets maximum number of concurrent connections this role can make. -1 means no limit
rolpasswordtext Password (possibly encrypted); NULL if none
rolvaliduntiltimestamptz Password expiry time (only used for password authentication); NULL if no expiration
rolconfigtext[] Session defaults for server configuration parameters
relresqueueoid Object ID of the associated resource queue ID in pg_resqueue
rolcreaterextgpfdboolean Privilege to create read external tables with the gpfdist or gpfdists protocol
rolcreaterexhttpboolean Privilege to create read external tables with the http protocol
rolcreatewextgpfdboolean Privilege to create write external tables with the gpfdist or gpfdists protocol
rolcreaterexthdfsboolean Privilege to create read external tables with the gphdfs protocol. (gphdfs is deprecated.)
rolcreatewexthdfsboolean Privilege to create write external tables with the gphdfs protocol. (gphdfs is deprecated.)