CREATE DATABASE LINK DBLINK_UTENTE1
CONNECT TO utente_ext IDENTIFIED BY password
USING 'nome_connessione';
CREATE PUBLIC SYNONYM DBLINK_UTENTE1 FOR utente1.DBLINK_UTENTE1;
Nel db di destinazione (nome_connessione) l'utente utente_ext ha il
grant di select sulla tabella tabella_ext
Se faccio con l'utente utente1 (amministratore) la query
SELECT campo FROM tabella_ext@DBLINK_UTENTE1
Tutto OK,
Se lo faccio invece con un altro utente non amministratore mi da
ORA-02019: connection description for remote database not found
Probabilmente devo dare dei grant all'utente utente_non_amministratore
per poter utilizzare il database link DBLINK_UTENTE1, ma se do
(tramite chiaramente utente amministratore) il grant select
GRANT SELECT ON DBLINK_UTENTE1 TO utente_non_amministratore;
mi dice
ORA-00980: synonym translation is no longer valid
Se do
GRANT SELECT ON tabella_ext@DBLINK_UTENTE1 TO
utente_non_amministratore;
mi da
ORA-02021: DDL operations are not allowed on a remote database
Che kavolo di grant devo dare? Sulla documentazione non riesco
(sicuramente per mia stupidità) a trovare nulla sui grant dei database
link. Ora proseguo la ricerca.
Grazie
RISOOOOLTO!
In fase di cerazione database link bisogna dare l'opzione public
CREATE PUBLIC DATABASE LINK DBLINK_UTENTE1
CONNECT TO utente_ext IDENTIFIED BY password
USING 'nome_connessione';
e il public synonim non serve.
Per ora risolvo così.
Se qualcuno di voi sa comunque come fare per settare gli accessi al
database link, nel senso preferirei che solo certi utenti potessero
utilizzarlo, ve ne sarei grato.
Grazie
Non so se è corretto, oggi mi sono posto lo stesso problema e ho
provato a risolverlo
con l'uso di una VIEW invece che di un SYSNONYM. Cioè faccio il dblink
non pubblico
su uno schema, creo una vista in tale schema e do il privilegio di
select a tale vista
agli utenti a cui voglio permettere l'accesso sulla tabella remota. Io
ho provato e pare
funzionare, senza dovre creare un db link pubblico.
Saluti
Cristian Cudizio
http://cristiancudizio.freehostia.com
http://cristiancudizio.wordpress.com