Permisos de usuario para geodatabases en Oracle
Debe otorgar privilegios específicos a los usuarios según las tareas que necesiten realizar en la base de datos de Oracle. Algunos privilegios se pueden otorgar a los roles, otros deben otorgarse directamente al usuario.
La primera sección de este tema enumera los privilegios de paquete requeridos para todos los usuarios. Estos permisos deben otorgarse al rol público para la creación y actualización de la geodatabase. Sin embargo, también se pueden otorgar a todos los usuarios en forma individual después de la creación o actualización de la geodatabase, si desea revocarlos del rol público.
La segunda sección enumera los privilegios de base de datos mínimos requeridos para tipos comunes de usuarios: visores de datos, editores de datos, creadores de datos y el administrador de ArcSDE. Estos privilegios también son necesarios, al igual que los que están enumerados en la primera sección.
La tercera sección enumera los privilegios que necesita el administrador de ArcSDE para crear o actualizar una geodatabase. Éstos también son necesarios, al igual que los que están enumerados en la primera sección.
La última sección enumera los privilegios opcionales que se asignan más comúnmente a ArcSDE para los usuarios de Oracle.
Puede utilizar Enterprise Manager de Oracle para administrar los privilegios de usuario. También puede utilizar declaraciones de SQL para otorgar y revocar privilegios.
Privilegios de paquete
Los siguientes paquetes requieren privilegios de ejecución:
- dbms_lob
- dbms_lock
- dbms_pipe
- dbms_utility
- dbms_sql
- utl_raw
Debe otorgar el privilegio de ejecución para estos paquetes al rol público para crear o actualizar la geodatabase.
GRANT EXECUTE ON dbms_pipe TO public; GRANT EXECUTE ON dbms_lock TO public; GRANT EXECUTE ON dbms_lob TO public; GRANT EXECUTE ON dbms_utility TO public; GRANT EXECUTE ON dbms_sql TO public; GRANT EXECUTE ON utl_raw TO public;
Se otorga el privilegio de ejecución para dbms_lob, dbms_utility, dbms_sql y utl_raw al rol público por defecto en Oracle. Por lo tanto, sólo debe otorgar los permisos de ejecución para estos paquetes al público si anteriormente los revocó de manera explícita.
Después de haber creado o actualizado la geodatabase, puede restringir los privilegios para estos paquetes revocando el permiso al rol público y otorgándolo a los usuarios individuales que inician sesión en la geodatabase, incluido el administrador de ArcSDE.
No puede otorgar permiso de ejecución a un rol y después otorgar el rol a todos los usuarios debido a que los privilegios otorgados a través de los roles de usuario no se aplican cuando se ejecutan los paquetes de Oracle.
Privilegios mínimos
Además de los privilegios mencionados en la sección anterior, los siguientes privilegios también son requeridos para cada tipo de usuario enumerado.
Tipo de usuario |
Privilegios de base de datos |
Privilegios de dataset |
Notas |
---|---|---|---|
Visor de datos |
|
SELECT en objetos de base de datos |
Si la base de datos se configura para utilizar archivos de registro de ArcSDE compartidos (los predeterminados), es posible que se necesiten privilegios adicionales. Vea Opciones de configuración de tablas de archivos de registro para Oracle para obtener más información. |
Editor de datos |
|
SELECT, INSERT, UPDATE y DELETE en datasets de otros usuarios |
Si la base de datos se configura para utilizar archivos de registro de ArcSDE compartidos (los predeterminados), es posible que se necesiten privilegios adicionales. Vea Opciones de configuración de tablas de archivos de registro para Oracle para obtener más información. |
Creador de datos |
|
Necesita el privilegio CREATE VIEW sólo si el usuario crea vistas de base de datos, espaciales o multiversionadas. |
|
Administrador de ArcSDE |
|
Necesita el privilegio SELECT ANY TABLE si utiliza autoregistro con Oracle Spatial. Si no utiliza autoregistro, no necesita el privilegio SELECT ANY TABLE. |
A partir de la versión 2 de Oracle 10g, el acceso a ORACLE_HOME es más restrictivo por motivos de seguridad. Para permitir que el administrador de ArcSDE tenga acceso a los archivos en ORACLE_HOME sin que se le otorguen privilegios elevados, instale un cliente Oracle compatible en la cuenta SDE del sistema operativo. En UNIX o Linux, establezca el cliente ORACLE_HOME en el shell de usuario SDE. Consulte el artículo de base de conocimiento 34824 para obtener detalles.
Privilegios requeridos para la creación o actualización de la geodatabase
La siguiente tabla enumera los privilegios que se deben otorgar al administrador de ArcSDE para crear o actualizar una geodatabase de ArcSDE. También se incluye la razón por la cual es necesario el privilegio o grupo de privilegios. Puede revocar algunos de estos privilegios una vez que se completa la creación o la actualización, como se muestra en el campo Propósito y como se indica en los permisos mínimos del administrador de ArcSDE en la tabla anterior.
Si utiliza geodatabases creadas en esquemas de usuario en Oracle, se necesitan los mismos permisos para el propietario del esquema en el cual residen las geodatabases para crear o actualizar su geodatabase.
Los privilegios están agrupados por el propósito al que sirven durante la creación y actualización de la geodatabase.
Privilegio |
Propósito |
---|---|
|
Conectarse a Oracle |
|
Crear y actualizar un repositorio de ArcSDE. |
|
Crear secuencias cuando se crea la geodatabase. |
|
Crear y actualizar paquetes para mantener los contenidos de las tablas de repositorio de ArcSDE. |
|
Crear los tipos de datos definidos por el usuario ST_Geometry y ST_Raster. Para actualizar ArcSDE también necesita los permisos CREATE OPERATOR y CREATE INDEXTYPE. Puede revocar estos privilegios después de la instalación o actualización. CREATE VIEW es necesario para crear vistas de sistema, GDB_Items_vw y GDB_ItemRelationships_vw. |
|
Actualizar los contenidos de la geodatabase. |
|
Permite la creación de desencadenantes de eventos de la base de datos para modificar las tablas ST_GEOMETRY_COLUMNS y ST_GEOMETRY_INDEX si suelta, modifica o cambia el nombre de una tabla con ST_Geometry utilizando SQL. Puede revocar este privilegio después de la instalación o actualización. |
Hay una secuencia de comandos (createsdeoracle.sql) instalada en ArcSDE para Oracle en SDEHOME > herramientas > oracle que se puede modificar y utilizar para crear un espacio de tabla y usuario SDE y otorgar los permisos al usuario SDE para crear una geodatabase o actualizarla.
Privilegios opcionales comunes
Muchas organizaciones elijen aprovechar los componentes adicionales de Oracle para aumentar aun más las capacidades de las geodatabases. En la siguiente tabla se enumeran varios privilegios opcionales comunes para el administrador de ArcSDE y el propósito de los mismos. Los privilegios están agrupados por el propósito al que sirven.
Privilegio |
Propósito |
---|---|
|
Permite el trazado de SQL, la entidad *Plus AUTOTRACE de SQL y modificar los parámetros de inicialización específicos de la sesión para el ajuste del rendimiento y la solución de problemas. Cree el rol PLUSTRACE ejecutando ORACLE_HOME/sqlplus/admin/plustrce.sql. |
|
Se le otorga al usuario administrador de ArcSDE para permitirle controlar Oracle y realizar tareas de mantenimiento básicas. Es útil para organizaciones donde el administrador de ArcSDE no es el DBA de Oracle |
|
Es útil para integrar la geodatabase con otras bases de datos no espaciales en la empresa |
|
Permite que el usuario administrador de ArcSDE realice mantenimiento mientras la base de datos está on-line pero los usuarios finales no pueden acceder a ella. |
|
Si le otorga este privilegio al administrador de ArcSDE para la instalación y la actualización, se asegura de que haya suficiente espacio de almacenamiento en el espacio de tabla del administrador de ArcSDE en la base de datos para completar la instalación o actualización. Puede revocar este privilegio después de instalar o actualizar ArcSDE si tiene cuotas establecidas para la administración del espacio. Nota: Debe asignar cuotas antes de otorgar el privilegio del sistema UNLIMITED TABLESPACE; de lo contrario, después de eso no podrá modificar la cuota a través de la consola Enterprise Manager de Oracle. |
|
El usuario sde debe tener estos permisos para eliminar conexiones directas a la geodatabase con el comando sdemon. Alternativamente, puede agregar al usuario sde en el rol de DBA para que elimine las conexiones directas. |
El propietario del dataset debe otorgar o revocar los privilegios de dataset con la herramienta de geoprocesamiento Cambiar privilegios disponible en ArcGIS Desktop. Consulte Otorgar y revocar privilegios en datasets y Cambiar privilegios para obtener instrucciones.