## 52.17. `pg_default_acl`

[]()

 The catalog `pg_default_acl` stores initial privileges to be assigned to newly created objects.

**Table 52.17. `pg_default_acl` Columns**

|                                                                  Column Type<br/><br/> Description                                                                  |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|                                                                `oid` `oid`<br/><br/> Row identifier                                                                 |
|                `defaclrole` `oid` (references [`pg_authid`](catalog-pg-authid.html).`oid`)<br/><br/> The OID of the role associated with this entry                 |
|`defaclnamespace` `oid` (references [`pg_namespace`](catalog-pg-namespace.html).`oid`)<br/><br/> The OID of the namespace associated with this entry, or zero if none|
|      `defaclobjtype` `char`<br/><br/> Type of object this entry is for: `r` = relation (table, view), `S` = sequence, `f` = function, `T` = type, `n` = schema      |
|                                `defaclacl` `aclitem[]`<br/><br/> Access privileges that this type of object should have on creation                                 |

 A `pg_default_acl` entry shows the initial privileges to be assigned to an object belonging to the indicated user. There are currently two types of entry: “global” entries with `defaclnamespace` = zero, and “per-schema” entries that reference a particular schema. If a global entry is present then it *overrides* the normal hard-wired default privileges for the object type. A per-schema entry, if present, represents privileges to be *added to* the global or hard-wired default privileges.

 Note that when an ACL entry in another catalog is null, it is taken to represent the hard-wired default privileges for its object, *not* whatever might be in `pg_default_acl` at the moment. `pg_default_acl` is only consulted during object creation.

