Este tema describe el modelo de permisos simple a nivel de esquema (SLPM) en Hologres.
Información de contexto
Hologres es compatible con PostgreSQL y permite usar el modelo de autorización estándar de PostgreSQL. Para obtener más información, consulte Expert permission model. En el modelo de autorización estándar de PostgreSQL, los permisos se gestionan de forma detallada. Para simplificar las operaciones, Hologres proporciona los siguientes modelos de permisos simples para distintos escenarios empresariales:
Modelo de permisos simple (SPM): permite otorgar permisos de base de datos a un usuario de manera sencilla. Para obtener más información, consulte Simple Permission Model Overview.
-
SLPM: divide los permisos según los esquemas. En comparación con SPM, este modelo gestiona los permisos con mayor granularidad. Si desea dividir los permisos de forma estricta y otorgarlos con facilidad, se recomienda usar el modelo SLPM.
Nota
En la consola de Hologres no es posible otorgar permisos de usuario mediante SLPM. Debe usar una herramienta de desarrollo para conectarse a una instancia de Hologres y ejecutar sentencias SQL para otorgar los permisos.
Grupos de usuarios y permisos en SLPM
Después de habilitar SLPM, se generan los siguientes grupos de usuarios con distintos permisos para cada base de datos:
Superuser
{db}.admin
{db}.{schema}.developer
{db}.{schema}.writer
{db}.{schema}.viewer
La siguiente tabla describe los permisos de cada grupo de usuarios.
Grupo de usuarios | Permisos |
Superuser | Actúa como administrador de una instancia de Hologres y tiene todos los permisos sobre la instancia. |
{db}.admin | Actúa como administrador de una base de datos. Tiene todos los permisos de los grupos {db}.{schema}.developer, {db}.{schema}.writer y {db}.{schema}.viewer de la base de datos. Es propietario de la base de datos y tiene permisos para eliminarla. Tiene permisos para gestionar miembros en los grupos {db}.admin, {db}.{schema}.developer, {db}.{schema}.writer y {db}.{schema}.viewer de la base de datos. Por ejemplo, un administrador de base de datos puede agregar o quitar miembros de estos grupos. Tiene permisos para consultar, agregar, modificar y eliminar objetos, como esquemas dentro de la base de datos. Tiene permisos para modificar la configuración de la base de datos.
|
{db}.{schema}.developer | Actúa como desarrollador de un esquema dentro de una base de datos. Tiene todos los permisos de los grupos {db}.{schema}.writer y {db}.{schema}.viewer. Es propietario de todos los objetos que no son del sistema en el esquema, incluidas tablas, tablas externas y objetos similares a tablas como vistas, funciones, procedimientos, servidores externos, contenedores de datos externos (FDW), tipos y lenguajes. Además, los desarrolladores pueden consultar, agregar, modificar y eliminar tablas en el esquema. Tiene permisos para usar servidores externos, FDW, tipos y lenguajes de la base de datos. Cuenta con los permisos USAGE y CREATE sobre el esquema, y puede usar lenguaje de definición de datos (DDL) para crear tablas, vistas y tablas externas en dicho esquema.
|
{db}.{schema}.writer | Actúa como escritor de un esquema dentro de una base de datos. Tiene todos los permisos del grupo {db}.{schema}.viewer. Tiene permisos para ejecutar las sentencias SELECT, INSERT, UPDATE y DELETE en todas las tablas, tablas externas y objetos similares a tablas, como vistas dentro del esquema. Tiene permisos para consultar, agregar, modificar y eliminar objetos en el esquema. Tiene permisos para acceder o usar funciones y procedimientos en el esquema. Tiene permisos para usar servidores externos, FDW, tipos y lenguajes de la base de datos. Cuenta con el permiso USAGE, pero no puede ejecutar sentencias DDL sobre el esquema.
|
{db}.{schema}.viewer | Actúa como analista de un esquema dentro de una base de datos. Cuenta con el permiso SELECT en todas las tablas, tablas externas y objetos similares a tablas, como vistas dentro del esquema. Tiene permisos para acceder o usar funciones y procedimientos en el esquema. Tiene permisos para usar servidores externos, FDW, tipos y lenguajes de la base de datos. Cuenta con el permiso USAGE sobre el esquema.
|