Utilización de sinónimos para compartir objetos

Cómo utilizar los sinónimos de Oracle para que un usuario pueda ver/utilizar objetos de un esquema que pertenezca a otro usuario.
Es algo muy sencillo y realmente útil. Lo único que hay que hacer es crear un sinónimo para cada objeto que queramos 'compartir', y después asignar los permisos que interese al esquema que quiere acceder al objeto.


-- Creación del sinónimo
CREATE PUBLIC SYNONYM "MI_TABLA"
FOR "YO"."MI_TABLA";

Utilizamos un sinónimo público para compartirlo para diferentes esquemas. La asignación de permisos sí que es específica para cada esquema que tenga que acceder al objeto


-- Asignación de permisos para el usuario EL
GRANT SELECT ON "YO"."MI_TABLA" TO "EL";
GRANT UPDATE ON "YO"."MI_TABLA" TO "EL";
GRANT INSERT ON "YO"."MI_TABLA" TO "EL";
GRANT DELETE ON "YO"."MI_TABLA" TO "EL";


-- Si se quiere dar acceso sólo de consulta a esta misma tabla para otro usuario, bastaría con hacer
GRANT SELECT ON "YO"."MI_TABLA" TO "ELLA";

Ahora "EL" y "ELLA" ya pueden trabajar sobre "MI_TABLA" cada uno con los permisos que el propietario de la tabla ha decidido

Promedio: 3.9 (14 votos)

Gracias

Tu post fue de mucha ayuda.
Thanks,
Priscila.

Gestion del Conocimiento    |   Business Intelligence y Analítica   |    Bases de Datos   |     ERP    |     CRM     |   Cloud computing    |   Tendencias IT