Как создать пользователя в Oracle, который мог бы только просматривать исходный код, не меняя его, и просматривать поля таблицы? - PullRequest
0 голосов
/ 05 сентября 2018

Как создать пользователя в Oracle, который мог бы просматривать только исходный код пакетов и процедур, не изменяя их, и просматривать поля таблицы, но не данные в таблицах?

Я знаю, что вы могли бы предоставить представление конкретному пользователю, но как запретить доступ к данным таблиц без скрытия полей?

Я ценю любую помощь.

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Я нашел решение. Вам необходимо создать представление для DBA_SOURCE и предоставить пользователю SELECT для этого представления. В этом случае пользователь сможет увидеть код пакетов и процедур и структуры таблиц, но не сможет выполнить их.

0 голосов
/ 05 сентября 2018

Существует роль для просмотра информации словаря данных. Таким образом, пользователь сможет просматривать определения таблиц, представлений, пакетов, системных объектов и т. Д.

grant select_catalog_role to user;

Или Select Any Dictionary грант.

Но благодаря этим грантам пользователь сможет видеть гораздо больше данных, чем ему нужно. Альтернативой является предоставление выбора в представлениях DBA_SOURCE, DBA_TABLES.

См. Раздел dba.stackexchange.com здесь .

...