Вопрос

У меня есть пользователь, например HR, которому была предоставлена очень мощная системная привилегия "ПРЕДОСТАВЛЯТЬ ЛЮБЫЕ ПРИВИЛЕГИИ"...Этот пользователь использовал эту привилегию и предоставил некоторые привилегии другим пользователям...Теперь я хочу отменить "ПРЕДОСТАВЛЕНИЕ ЛЮБЫХ ПРИВИЛЕГИЙ" от HR и также определите, какие привилегии и кому предоставил пользователь HR (я хочу отозвать у них эти привилегии).

Я знаю, что oracle сохраняет в метаданных только grantee и privilege, а не лицо, предоставляющее системные привилегии (в отличие от привилегий объекта)...

Если у вас есть какая-то идея, пожалуйста, ответьте..

Большое вам спасибо за предыдущее.

Это было полезно?

Решение

В представлении ALL_COL_PRIVS будет показано лицо, предоставляющее право В представлении ALL_TAB_PRIVS будет показано лицо, предоставляющее право В представлении TABLE_PRIVILEGES будет показано лицо, предоставляющее право

плюс их пользовательские версии..

Редактировать:

чтобы найти список привилегий объекта, предоставленных HR, используйте запрос, подобный этому:

select * from all_tab_privs where grantor = 'HR';

я не знаю способа проверить предоставление объектов системного уровня

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top