Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Гранты на директорию через роль / 7 сообщений из 7, страница 1 из 1
29.12.2016, 11:00
    #39377450
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гранты на директорию через роль
БД 12.1.0.2

Есть внешняя таблица. Обычный селект из неё работает нормально. Но если я оберну этот селект в пакет, то получаю ошибку
ORA-06564: object <имя директории> does not exist

Оказалась проблема в том, что гранты на директорию даны через роль. Если дать грант непосредственно пользователю, то процедура из пакета работает.

Подскажите, это бага или ограничения оракла?
...
Рейтинг: 0 / 0
29.12.2016, 11:17
    #39377457
Viewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гранты на директорию через роль
...
Рейтинг: 0 / 0
29.12.2016, 12:03
    #39377500
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гранты на директорию через роль
Viewer 18496853 Спасибо за доку, буду знать. А не подскажешь почему так сделано, просто интересно?
...
Рейтинг: 0 / 0
29.12.2016, 12:27
    #39377529
authid invoker
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гранты на директорию через роль
micis,

потому что включение/выключение ролей в сессии не ддл и хп не инвалидирует статическую компиляцию.
...
Рейтинг: 0 / 0
29.12.2016, 12:38
    #39377544
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гранты на директорию через роль
micisпочему так сделано, просто интересно?Хранимый код - он один для всех пользователей независимо от того, какие у них, а тем более у владельца SET ROLE.
...
Рейтинг: 0 / 0
30.12.2016, 03:30
    #39378066
micis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гранты на директорию через роль
ElicХранимый код - он один для всех пользователей независимо от того, какие у них, а тем более у владельца SET ROLE.
Не логично это: у пользователя нет прав на директорию (ни через роль, ни прямых) - но пакет компилится и валиден. Значит права проверяются на этапе выполнения. Что мешает ораклу задействовать в этой проверке текущие роли (по аналогии с анонимным блоком pl/sql)?
...
Рейтинг: 0 / 0
30.12.2016, 03:52
    #39378074
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гранты на директорию через роль
micisElicХранимый код - он один для всех пользователей независимо от того, какие у них, а тем более у владельца SET ROLE.
Не логично это: у пользователя нет прав на директорию (ни через роль, ни прямых) - но пакет компилится и валиден.А пакет ни к какой директории и не обращается, он обращается к таблице, поэтому и проверяются права именно на доступ к таблице
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Гранты на директорию через роль / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]