Permisos de consulta sobre tablas de diferentes esquemas

Para conceder permisos de consulta a este usuario sobre todas las tablas de los demás esquemas lo mejor es que utilices el diccionario de datos para crear los permisos. Entra con un usuario de sistema (SYS o SYSTEM) que 'vea' todas las tablas y ejecuta una sentencia como esta:

select 'Grant select on '|| t.owner||'.'||t.table_name ||' to usuario;'
from all_tables t
where owner not like '%SYS%';

Si quieres, en el artículo Construcción de scripts con ayuda del diccionario puedes consultar cómo crear un script con estas sentencias y lanzarlo desde la linea de comandos.

Otra opción sería asignar al usuario el rol SELECT_CATALOG_ROLE, o darle permisos de SELECT ANY DICTIONARY, pero con la que te propongo puedes restringir los permisos a lo que quieras en la misma select si, por ejemplo, no te interesa que el usuario tenga acceso a las tablas de sistema.

Carlos Fernández

Analista de sistemas

Responder

El contenido de este campo se mantiene como privado y no se muestra públicamente.
  • Saltos automáticos de líneas y de párrafos.
  • Links to specified hosts will have a rel="nofollow" added to them.

  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.

Más información sobre opciones de formato

CAPTCHA
Esta comprobación es para evitar el spam
Image CAPTCHA
Copy the characters (respecting upper/lower case) from the image.

Busqueda con el motor de Google

Google