Oracle - Para administradores.

 
Vista:

Para administradores.

Publicado por Diego (2 intervenciones) el 21/03/2001 10:42:43
Necesito saber como hacer para que SOBRE UNA SOLA TABLA varios usuarios (user1,user2,...userN) accedan para consultarla, pero SOLO el user0 pueda modificar, añadir, borrar ...

Los userN forman parte de un arbol de directorios de un servidor NetWare.

¿Cómo 'apunto' los users a esa tabla y como les asigno los permisos?

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Para administradores.

Publicado por José (8 intervenciones) el 21/03/2001 14:02:38
No es tan sencillo. Debes elaborar perfiles de usuarios, luego debes asignarles Grant o permisos sobre los perfiles previamente creados. Realmente lo que te quitará mas tiempo es elaborar los perfiles por que debes hacerlo por cada tabla y debes estudiar cada forma dentro de tu sistemas. Yo actualmente debo realizar ese trabajo pero son cerca de 1500 formas a la que debo analizar para establecer los perfiles. La pregunta, Cuando lo hago?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Para administradores.

Publicado por Alfonso (28 intervenciones) el 22/03/2001 20:44:54
La forma de enfocarlo no es con perfiles sino con ROLES.
La idea es la siguiente: El usuario USER0 será el propietario de las tablas/objetos,
de forma que tiene todos los privilegios sobre la misma (insert, select, update, delete).
Para solucionar la tediosa tarea de asignar los privilegios de select sobre la tabla a los
usuarios, la forma más cómoda y más fácil de controlar es mediante el uso de ROLES.
Se crea un ROLE y se le asignan al ROLE los permisos que se quieran otorgar sobre
la(s) tablas/objetos. (en nuestro caso, select).
Ahora se trata de dar ese ROLE a los usuarios que nos interese.
Si se desea añadir permiso de select sobre una nueva tabla a TODOS los usuarios,
no habrá que ir usuario por usuario concediéndoselo. Con asignarselo al ROLE,
autimáticamente todos los usuarios que posean ese ROLE obtendran el nuevo
privilegio.
Para concluir, a título de ejemplo:

connect user0/pwd;
create table mi_tabla1 (....);
create table mi_tabla2 (....);
...
create table mi_tablan (....);

connect system/pwd;
create role mi_role;

grant select on user0.mi_tabla1 to mi_role;
grant select on user0.mi_tabla2 to mi_role;
...
grant select on user0.mi_tablan to mi_role;

grant mi_role to user1;
grant mi_role to user2;
...
grant mi_role to usern;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar