ORA-12406: неавторизованный оператор SQL для политики - PullRequest
0 голосов
/ 17 сентября 2009

Я получаю следующую ошибку:

ORA-12406: несанкционированный оператор SQL для политики

Я выполняю хранимую процедуру, которая выполняет следующие две хранимые процедуры Oracle Label Security:

  1. SA_COMPONENTS.CREATE_GROUP

  2. SA_LABEL_ADMIN.CREATE_LABEL

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

ORA-12406: несанкционированный оператор SQL для строки политики Причина: политика не авторизовал сеанс базы данных выполнить запрошенный SQL заявление. Действие: предоставить пользователю или программный блок необходимой политики привилегия или дополнительные разрешения ....

1 Ответ

0 голосов
/ 17 сентября 2009

Из вашего описания и тестирования видно, что пакеты SA_COMPONENTS и SA_LABEL_ADMIN участвуют в транзакции (т.е. они вставляют или обновляют информацию в системных таблицах, которые являются частью архитектуры Label Security, но не фиксируют), и эта информация должна быть совершено до вставки таблицы приложения.

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