Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Asignar permisos a usuarios Oracle

Estas en el tema de Asignar permisos a usuarios Oracle en el foro de Bases de Datos General en Foros del Web. Hola amigos, tengo un inconveniente al querer dar permisos a los usuarios sobre las tablas de usuario que existen en la BD. El owner de ...
  #1 (permalink)  
Antiguo 08/01/2005, 09:53
 
Fecha de Ingreso: junio-2004
Ubicación: Ciudad de Panama
Mensajes: 551
Antigüedad: 20 años, 5 meses
Puntos: 8
Pregunta Asignar permisos a usuarios Oracle

Hola amigos, tengo un inconveniente al querer dar permisos a los usuarios sobre las tablas de usuario que existen en la BD. El owner de las tablas esta identificado como 'propietario', he ejecutado el siguiente query para dar permisos al usuario1 sobre esas tablas:

SELECT 'CREATE SYNONYM '||OBJECT_NAME ||' FOR usuario1.'||OBJECT_NAME ||';'
FROM DBA_OBJECTS
WHERE OWNER='PROPIETARIO'
AND OBJECT_TYPE IN ('TABLE','VIEW')

Este query termina exitosamente. Ahora, para verificar, me logueo como el usuario1 y hago un SELECT sobre cualquiera de las tablas que existen en la BD: "SELECT * FROM tabla1;"

El resultado que obtengo es que la tabla o vista no exite.

Si ejecuto el query asi: "SELECT * FROM propietario.tabla1;" me da el resultado que espero.

Que debo hacer para EVITAR identificar el propietario de las tablas? Esto es necesario ya que de otra forma tendria que modificar todos mis querys en PHP (Que son bastantes)

Agradezco de antemano sus valiosos conceptos al respecto

Felicidades
  #2 (permalink)  
Antiguo 18/09/2009, 14:42
 
Fecha de Ingreso: septiembre-2009
Mensajes: 1
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Asignar permisos a usuarios Oracle

Debes crear primero todos los sinonimos de las tablasm, que se llamen igual para poder accederlas..

sin necesidad de escribir el nombre del esquema

CREATE SYNONYM <nombre_sinonimo> FOR <nombre_tabla>;


SELECT 'CREATE SYNONYM '||OBJECT_NAME ||' FOR '||OBJECT_NAME ||';'
FROM DBA_OBJECTS
WHERE OWNER='PROPIETARIO'
AND OBJECT_TYPE IN ('TABLE','VIEW')


Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:29.