Процедура безопасности Oracle - PullRequest
1 голос
/ 21 февраля 2011

В Oracle - я хочу убедиться, что владелец триггера должен совпадать с владельцем таблицы.- Также мнения должны быть ограничены.Пользователь не должен иметь возможность запрашивать системные представления и таблицы.

Ответы [ 2 ]

3 голосов
/ 21 февраля 2011

Как правило, только владелец таблицы будет иметь права на создание триггеров на нем. Администраторы баз данных могут иметь привилегию CREATE ANY TRIGGER, но защита базы данных от администратора баз данных - это совсем другой вопрос.

Существует ряд системных представлений (например, USER_TABLES, ALL_USERS), к которым вы не можете отозвать доступ, но они будут показывать только то, к чему пользователю был предоставлен доступ. Опять же, администратор базы данных будет иметь доступ к представлениям с префиксом DBA_ и «представлениям» с префиксом V $ (что немного странно в том, что они отображают оперативную информацию о базе данных, а не данные, хранящиеся где-либо на диске) и таблицы, принадлежащие SYS.

1 голос
/ 21 февраля 2011

Что именно вы хотите достичь?Обычно мы создаем роли, которые предоставляют доступ только к таблицам и представлениям приложения.Владелец приложения предоставляет привилегии этим ролям, а роли предоставляются вашим пользователям.Пока владелец таблиц имеет только обычные привилегии 'create xxx', не о чем беспокоиться.Обычно нам нужен доступ к некоторым системным таблицам и представлениям.

Какие данные вы хотите скрыть?Большинство представлений не раскрывают больше, чем уже известно приложению.

Никому не предоставляйте привилегии «xxxx ЛЮБЫЕ».Большую часть времени, когда эти привилегии просят, это из-за лени.Они нужны редко.

Рональд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...