CftClub.ru
Клуб специалистов ЦФТ-Банк

Запуск JOBа от имени другого пользователя
На страницу Пред.  1, 2, 3, 4
 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle
Предыдущая тема :: Следующая тема  
Автор Сообщение
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеЧт Ноя 24, 2016 16:33    Ответить с цитатой
Полезность: 2
Матвеев Евгений пишет:
Очень большие сомнения, что в данной операции у тебя получится из вне (в том числе через расширение) изменить значение переменной, объявленной в локальных описаниях

Локальные, они для того и локальные, чтобы они были доступны только внутри


С галочкой "объединённый пакет" может и прокатит. Эта галка из 2х объектов (дистрибутив и расширение) делает 1н оракловый
wolfio
Участник - экстремал


Вступление в Клуб: 22.10.2012
СообщениеЧт Ноя 24, 2016 16:41    Ответить с цитатой
Полезность: Нет оценки
Цитата:
С галочкой "объединённый пакет" может и прокатит. Эта галка из 2х объектов (дистрибутив и расширение) делает 1н оракловый


Это где такая?
я через расширение смог в принципе. но т.к. операция предполагает использование пользователем, то надо еще какую-то проверку писать, чтобы моя доработка не влияля на работу операции в руках пользователя
Матвеев Евгений
Профи


Вступление в Клуб: 31.01.2012
СообщениеЧт Ноя 24, 2016 16:46    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
Матвеев Евгений пишет:
Очень большие сомнения, что в данной операции у тебя получится из вне (в том числе через расширение) изменить значение переменной, объявленной в локальных описаниях

Локальные, они для того и локальные, чтобы они были доступны только внутри


С галочкой "объединённый пакет" может и прокатит. Эта галка из 2х объектов (дистрибутив и расширение) делает 1н оракловый



ТЕЛО
Код:




begin
   OurDepart := null;
   &BASE$SETVARS;   
   OurDepart := null;   
   &BASE$EXECUTE;
   OurDepart := null;
end;


ПРОВЕРКА
Код:

begin 
   OurDepart := null;
   &BASE$SETVARS;   
   OurDepart := null;   
   &BASE$VALIDATE;   
   OurDepart := null;   
   &BASE$GETVARS;   
   OurDepart := null;   
end;


Переменная по такой настройке видна, так что можно попробовать


wolfio пишет:


Это где такая?
я через расширение смог в принципе. но т.к. операция предполагает использование пользователем, то надо еще какую-то проверку писать, чтобы моя доработка не влияля на работу операции в руках пользователя


Делаешь расширение, закладка Свойства, закладка Компиляция , группа Расширение, Объединенный пакет, ставишь галку
Матвеев Евгений
Профи


Вступление в Клуб: 31.01.2012
СообщениеЧт Ноя 24, 2016 16:53    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
Матвеев Евгений пишет:
Очень большие сомнения, что в данной операции у тебя получится из вне (в том числе через расширение) изменить значение переменной, объявленной в локальных описаниях

Локальные, они для того и локальные, чтобы они были доступны только внутри


С галочкой "объединённый пакет" может и прокатит. Эта галка из 2х объектов (дистрибутив и расширение) делает 1н оракловый


Еще вопрос, который не совсем понятен, как вызов операции сделать с учетом запуска расширения?

В начальном виде, так как явно указывается операция, расширение отработает?
Код:
[TEST_DEP]();
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеЧт Ноя 24, 2016 17:19    Ответить с цитатой
Полезность: Нет оценки
Должно, пакет то один.
wolfio
Участник - экстремал


Вступление в Клуб: 22.10.2012
СообщениеЧт Ноя 24, 2016 17:22    Ответить с цитатой
Полезность: Нет оценки
я проверил.
в изначальном варианте обращение работает корректно.
alyona_1989
Участник


Вступление в Клуб: 23.01.2020
СообщениеЧт Янв 23, 2020 10:09    Ответить с цитатой
Полезность: Нет оценки
Подскажите все-таки если нет пакета APP_SECURITY, как можно запустить под обычным пользователем текстовое задание? Всеми возможными способами пробовала, в основном всегда выходит ошибка EXEC-OBJ_NOT_ACCESSIBLE: Экземпляр ... не доступен пользователю. Подскажите, может у кого был опыт как обойти проверку security.obj_accessible?
vtar
Эксперт


Вступление в Клуб: 20.03.2009
СообщениеЧт Янв 23, 2020 12:12    Ответить с цитатой
Полезность: Нет оценки
alyona_1989 пишет:
Подскажите все-таки если нет пакета APP_SECURITY, как можно запустить под обычным пользователем текстовое задание? Всеми возможными способами пробовала, в основном всегда выходит ошибка EXEC-OBJ_NOT_ACCESSIBLE: Экземпляр ... не доступен пользователю. Подскажите, может у кого был опыт как обойти проверку security.obj_accessible?


предоставить доступ пользователю не пробовали?
Volod
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеЧт Янв 23, 2020 14:19    Ответить с цитатой
Полезность: Нет оценки
Контекст поменять?
alyona_1989
Участник


Вступление в Клуб: 23.01.2020
СообщениеЧт Янв 23, 2020 20:22    Ответить с цитатой
Полезность: Нет оценки
vtar пишет:
alyona_1989 пишет:
Подскажите все-таки если нет пакета APP_SECURITY, как можно запустить под обычным пользователем текстовое задание? Всеми возможными способами пробовала, в основном всегда выходит ошибка EXEC-OBJ_NOT_ACCESSIBLE: Экземпляр ... не доступен пользователю. Подскажите, может у кого был опыт как обойти проверку security.obj_accessible?


предоставить доступ пользователю не пробовали?



По политике компании не могу дать на постояннку, если только как-то внутри операции. Но суть в том, что операцию по запуску тектовиков могут запускать пользователи, у которых по сути не должно быть доступов на запуск джобиков. А можно ли чтоб внутри операции сам этот пользователь дал себе доступ? Rolling Eyes
alyona_1989
Участник


Вступление в Клуб: 23.01.2020
СообщениеЧт Янв 23, 2020 20:22    Ответить с цитатой
Полезность: Нет оценки
Volod пишет:
Контекст поменять?


Пробовала, не помогает Sad
Матвеев Евгений
Профи


Вступление в Клуб: 31.01.2012
СообщениеПт Янв 24, 2020 14:02    Ответить с цитатой
Полезность: Нет оценки
alyona_1989 пишет:
vtar пишет:
alyona_1989 пишет:
Подскажите все-таки если нет пакета APP_SECURITY, как можно запустить под обычным пользователем текстовое задание? Всеми возможными способами пробовала, в основном всегда выходит ошибка EXEC-OBJ_NOT_ACCESSIBLE: Экземпляр ... не доступен пользователю. Подскажите, может у кого был опыт как обойти проверку security.obj_accessible?


предоставить доступ пользователю не пробовали?



По политике компании не могу дать на постояннку, если только как-то внутри операции. Но суть в том, что операцию по запуску тектовиков могут запускать пользователи, у которых по сути не должно быть доступов на запуск джобиков. А можно ли чтоб внутри операции сам этот пользователь дал себе доступ? Rolling Eyes



Приветствую, программно раздавать можно, но чую контекст менять на IBS всё равно придется

Код:

secadmin.SetMethodRights(var1, var2, var3);
...
secadmin.SetClassRights(var1, var2, var3);
...
secadmin.SetCriteriaRights(var1, var2, var3);
...


По исходникам выше примеры должны гуглиться...)
Матвеев Евгений
Профи


Вступление в Клуб: 31.01.2012
СообщениеПт Янв 24, 2020 14:07    Ответить с цитатой
Полезность: Нет оценки
alyona_1989 пишет:
Volod пишет:
Контекст поменять?


Пробовала, не помогает Sad


Запоминаете старого пользователя
Меняете контекст на IBS
Накидываете права
Меняете контекст обратно
Запуск "джобика"
Меняете контекст на IBS
Отбираете права
Меняете контекст обратно

Теоретически так... гарантий никаких,... пробуйте ещё...

Ну и при ошибках ролбэк разумеется
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle Часовой пояс: GMT + 3
На страницу Пред.  1, 2, 3, 4
Страница 4 из 4

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru