Las versiones anteriores de Postgres y algunos otros sistemas de base de datos tienen conceptos separados de "grupos" (a los que se otorga acceso a los objetos de la base de datos) y "usuarios" (que pueden iniciar sesión y son miembros de uno o más grupos).
En las versiones modernas de Postgres, los dos conceptos se han fusionado:un "rol" puede tener la capacidad de iniciar sesión, la capacidad de "heredar" de otros roles (como un usuario que es miembro de un grupo o un grupo que es miembro de otro grupo) y acceso a los objetos de la base de datos.
Para mayor comodidad, muchas herramientas y manuales se refieren a cualquier usuario con permiso de inicio de sesión como "usuario" o "función de inicio de sesión" y a cualquiera que no lo tenga como "grupo" o "función de grupo", ya que es una práctica útil y común limitarse aproximadamente a esa estructura Esto es completamente una convención de terminología, y para comprender los permisos, solo necesita comprender las opciones disponibles cuando creando roles y otorgándoles acceso .
Nuevamente, por conveniencia, Postgres aún acepta comandos que utilizan la terminología anterior, como CREATE USER
y CREATE GROUP
ambos son alias para CREATE ROLE
. Si escribes CREATE USER
, el LOGIN
el permiso se agregará al nuevo rol de forma predeterminada, para emular el comportamiento anterior cuando era un comando separado.