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

conectar varios usuarios al mismo schema

Estas en el tema de conectar varios usuarios al mismo schema en el foro de Oracle en Foros del Web. como puedo hacer que varios usuarios se conecten al mismo schema en oracle, es decir: tengo el squema cuentas en el cual tengo todas mis ...
  #1 (permalink)  
Antiguo 07/09/2010, 13:41
Avatar de ah_puch  
Fecha de Ingreso: agosto-2005
Ubicación: Ecatepec, México
Mensajes: 180
Antigüedad: 18 años, 7 meses
Puntos: 3
conectar varios usuarios al mismo schema

como puedo hacer que varios usuarios se conecten al mismo schema en oracle, es decir:

tengo el squema cuentas en el cual tengo todas mis tablas sp, etc, etc.

pero quiero que varios usuarios tengan acceso solo a ese esquema.

entonces hice lo siguiente

Código MySQL:
Ver original
  1. Create User usuario1
  2.   IDENTIFIED BY 12psw123
  3.     Account Unlock;
  4.  
  5. GRANT roll_cuentas TO usuario1;

donde roll cuentas tiene permisos de coneccion y dba, pero ahora como le digo que solo los puede aplicar sobre el esquema cuentas y que solo se conecte a ese esquema?
__________________
La programacion no es un trabajo, es un Arte
http://www.purodev.blogspot.com
  #2 (permalink)  
Antiguo 07/09/2010, 16:50
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 5 meses
Puntos: 85
Respuesta: conectar varios usuarios al mismo schema

No hay una forma directa de hacer esto, tendrás que apoyarte en roles y sinónimos para crear un entorno accesible a los usuarios que elijas.

En primer lugar, rol_cuentas no debería tener asignado el rol de dba, lo más básico para conectarse a la base es connect y create session, a partir de ahí, puedes utilizar las sentencia:

Código:
grant all on un_objeto to rol_cuentas;
Donde un_objeto puede ser una tabla, procedimiento, función, etc. Cuando termines de configurar el rol, debes asignarlo a cada usuario en particular:

Código:
grant rol_cuentas to usuario;
Finalmente, supongamos que el esquema que contiene todos los objetos se llama schema1, para que todos los usuarios puedan hacer referencia a los objetos directamente, puedes utilizar sinónimos públicos, por ejemplo:

Código:
create public synonym un_objeto for schema1.un_objeto;
No comentas mucho para que necesitas esto, pero recuerdo un modelo viejo de delegar la seguridad de las aplicaciones en usuarios de la base de datos, solo quería agregar que esto se lo considera deprecado ya que no es el más óptimo.

Saludos

Etiquetas: schema, usuarios
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 13:05.