Рассмотрим следующий сценарий ....
У меня есть мастер-пользователь MASTER.
У меня есть тестовый пользователь TEST.
Для обоих пользователей структура таблицы одинакова. Оба пользователя могут находиться на разных серверах Oracle.
затем я создаю ссылку на базу данных как master_link, войдя в качестве тестового пользователя в sql plus, используя следующую команду
СОЗДАТЬ ССЫЛКУ БАЗЫ ДАННЫХ master_link ПОДКЛЮЧИТЬСЯ К МАСТЕРУ, ОПРЕДЕЛЯЕМОМУ ИСПОЛЬЗОВАНИЕМ ПАРОЛЯ (ОПИСАНИЕ = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (HOST = 192.168.9.139 (PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))
Войдя в систему в качестве тестового пользователя и используя имя ссылки на базу данных, я могу изменить таблицы в главном пользователе. например
обновление таблицы1 @ master_link set display_title = 'PONDS';
Этот запрос обновляет таблицу table1 главного пользователя.
Мое требование - я хочу дать разрешение только на чтение для ссылки на базу данных (master_link), чтобы тестовый пользователь не мог изменять или вставлять в любую таблицу в главном пользователе с помощью ссылки на базу данных.