2014-12-11 4 views
0

DB1의 사용자는 SELECT 권한 만 있습니다.DBLink Priveleges 대 사용자 권한

DB1에 작성된 DBLink ~ DB2입니다.

사용자가 DB2 테이블에 가질 수있는 권한은 무엇입니까? 그들은 DB2에 그의 priveleges에 의존합니까? 당신이 데이터베이스 링크의 구문을 보면

당신에게

답변

2

감사, 하나는 데이터베이스 링크를 가지고있는 권한은 데이터베이스가 연결되고 연결하는 을 사용하고있는 데이터베이스 사용자에 따라 달라집니다.

예를 들어 아래 데이터베이스 링크를 사용하면 apps 데이터베이스 계정이 db2 데이터베이스에서 사용되고 있습니다.

따라서 apps/db2, system 또는 object에 부여 된 특권은 dblink의 소유자 인 user1 @ db1이이 데이터베이스 링크를 통해 가지는 특권입니다.

CREATE DATABASE LINK user1.db1_to_db2.cm.big_company.com 
    CONNECT TO apps IDENTIFIED BY VALUES apps_password USING '(DESCRIPTION=    
(ADDRESS_LIST=     
(ADDRESS=(PROTOCOL=tcp)(HOST=hostname.cm.big_company.com)(PORT=1577))    
)    
(CONNECT_DATA=     
(SERVICE_NAME=db2)    
)   
)'; 
+0

'DB1'의 사용자는 'DBLink'를 인증하는 데 사용 된 사용자와 동일한 권한을 갖게됩니다. –

+0

예, 11g 문서에는 https://docs.oracle.com/cd/E18283_01/server.112/e17120/ds_concepts002.htm이 나와 있습니다. 특히 "고정 사용자 링크"설명을보십시오. –