Privilegios para geodatabases en PostgreSQL

Los privilegios determinan lo que alguien está autorizado a hacer con los datos y la base de datos. Debe asignar los privilegios según el tipo de trabajo que realiza la persona dentro de la organización. ¿Participa esta persona en la administración de la geodatabase? ¿Necesita esta persona editar o crear datos? ¿O solo necesitaría consultar los datos?

Los privilegios de usuario se establecen en diferentes niveles y para diferentes propósitos. La primera sección a continuación describe los privilegios mínimos que necesitan los tipos comunes de usuarios sobre las bases de datos y datasets: visores de datos, editores de datos, creadores de datos y el administrador de la geodatabase. La segunda sección enumera los privilegios requeridos por el administrador de la geodatabase para crear y actualizar una geodatabase en PostgreSQL. La última sección proporciona enlaces a otra información sobre los posibles privilegios necesarios.

Los usuarios de bases de datos individuales en PostgreSQL se denominan roles de inicio de sesión. Para agrupar roles de inicio de sesión que estén basados en las tareas comunes que realizan los usuarios, puede crear roles de grupo, agregar los roles de inicio de sesión a los roles de grupo y asignar privilegios a los roles de grupo.

Nota:

Los privilegios de base de datos CONNECT y TEMPORARY se otorgan al rol de grupo público de forma predeterminada. Si se revocan estos privilegios para el rol del grupo público, deben otorgarse explícitamente los privilegios CONNECT y TEMPORARY de bases de datos a los roles de grupo o de inicios de sesión específicos.

Puede utilizar una de las aplicaciones administrativas que se conectan a las bases de datos de PostgreSQL, por ejemplo, pgAdmin, con el fin de administrar los privilegios de usuario. O bien, puede utilizar declaraciones de SQL para otorgar y revocar privilegios.

Los privilegios de los datasets en las geodatabases se deben otorgar o revocar mediante ArcGIS y esta labor debe correr a cargo del propietario del dataset.

Los privilegios enumerados en esta página se aplican a los roles de inicio de sesión de servicios de base de datos de PostgreSQL y PostgreSQL admitidos por ArcGIS.

Privilegios mínimos

En la tabla siguiente se enumeran los privilegios que deben otorgarse a cada uno de los tres grupos comunes (visores, editores y creadores de datos) y los privilegios mínimos necesarios para el administrador de la geodatabase (el rol de inicio de sesión sde) a fin de realizar operaciones habituales.

Tipo de usuarioPrivilegios requeridosPropósito

Visor de datos

Otorgue USAGE en el esquema sde.

Este privilegio permite acceder a la geodatabase.

Otorgue USAGE en todos los demás esquemas que contienen datos a los que necesitan acceder los visores de datos

Este privilegio permite acceder a los datos de esquemas específicos.

Si la base de datos utiliza el tipo de geometría de PostGIS para el almacenamiento de los datos espaciales, los roles necesitan el privilegio SELECT en la tabla spatial_ref_sys y en la vista geometry_columns de PostGIS.

Este privilegio se requiere para acceder a los datos de geometría de PostGIS.

Si la base de datos utiliza el tipo de geografía de PostGIS para el almacenamiento de datos espaciales, los roles requieren el privilegio SELECT sobre la tabla spatial_ref_sys y la vista geography_columns de PostGIS.

Este privilegio se requiere para el acceso a los datos de geografía de PostGIS.

Otorgue SELECT en datasets específicos.

El propietario de los datos debe otorgar el privilegio SELECT para las tablas y las clases de entidad de una geodatabase a los visores de datos, para que puedan acceder a los datos.

Editor de datos

Los editores de datos necesitan los mismos privilegios que los visores de datos, más estos otros privilegios adicionales.

INSERT, UPDATE, DELETE en las tablas de otros usuarios

Cuando se usa ArcGIS para asignar los privilegios SELECT, INSERT, UPDATE y DELETE en una tabla o clase de entidad registradas para el versionado tradicional, esos privilegios se otorgan automáticamente en la vista versionada asociada. Dichos privilegios son necesarios para que el usuario pueda editar con una vista SQL y una vista versionada.

Los propietarios de los datos deben otorgar a los editores los privilegios necesarios para editar los datos de una geodatabase.

Creador de datos

Los creadores de datos necesitan los mismos privilegios que los visores de datos, más este privilegio adicional:

Cada rol de inicio de sesión que crea datos requiere el privilegio AUTHORIZATION en su propio esquema. Tenga que cuenta que el nombre del esquema debe coincidir con el nombre del rol de inicio de sesión y que los roles de grupo no pueden compartir un esquema.

Otorgar AUTHORIZATION en el esquema del usuario garantiza que todos los objetos creados en el esquema sean propiedad de ese usuario.

Administrador de la geodatabase (el rol de inicio de sesión sde)

AUTHORIZATION en su propio esquema denominado sde.

El rol de inicio de sesión sde requiere USAGE en todos los demás esquemas de usuario.

Las tablas del sistema, funciones y procedimientos de geodatabase se almacenan en el esquema sde.

USAGE es necesario en otros esquemas de usuario para que el usuario sde comprima la geodatabase.

Tabla de privilegios de PostgreSQL

Privilegios requeridos para crear o actualizar una geodatabase

Los privilegios requeridos por el inicio de sesión sde para crear y actualizar una geodatabase se describen en la siguiente tabla. En la tabla se enumeran los privilegios para cada tipo de implementación de PostgreSQL que admite ArcGIS.

Crear geodatabaseActualizar geodatabaseNotas
PostgreSQL

Login

Estado superuser

Estado Superuser

Tiene la capacidad de acceder a todos los esquemas de los demás usuarios y tener el privilegio SELECT en todos los datasets de la geodatabase.

Si no desea que el usuario sde elimine conexiones, puede revocar el estado superuser de sde después de crear o actualizar la geodatabase.

Amazon Relational Database Service (RDS) for PostgreSQL

Login

Estado rds_superuser

Login

Estado rds_superuser

Al usuario sde también deben otorgarse todos los roles que poseen datos en la geodatabase.

Por ejemplo, si los roles gisdata1 y gisdata2 poseen datos en la geodatabase, debe otorgar estos roles a sde antes de la actualización.

grant gisdata1 to sde;

grant gisdata2 to sde;

Revoque los roles de sde después de actualizar la geodatabase.

Puede revocar rds_superuser de sde después de que el usuario sde cree o actualice la geodatabase.

Amazon Aurora (PostgreSQL-compatible edition)

Login

Estado rds_superuser

Login

Estado rds_superuser

Puede revocar rds_superuser de sde después de que el usuario sde cree o actualice la geodatabase.

Microsoft Azure Database for PostgreSQL

Login

GRANT azure_pg_admin TO sde;

Login

GRANT azure_pg_admin TO sde;

Puede revocar azure_pg_admin de sde después de que el usuario sde cree o actualice la geodatabase.

Google Cloud SQL for PostgreSQL

Al usuario sde se le debe otorgar cloudsqlsuperuser.

Al usuario sde se le debe otorgar cloudsqlsuperuser.

Puede revocar cloudsqlsuperuser de sde después de que el usuario sde cree o actualice la geodatabase.

Otros privilegios

Los siguientes son privilegios adicionales necesarios para realizar otras tareas opcionales en ArcGIS: