AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Администрирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.12.2013, 18:03   #1  
AnGor is offline
AnGor
Участник
Аватар для AnGor
 
97 / 46 (2) +++
Регистрация: 30.08.2007
Адрес: Ulm
Записей в блоге: 6
? Как задать пользователя, от имени которого запускается пакетное задание?
Возникла задача - поменять пользователя, от имени которого запускается пакетное задание. Как это можно сделать?
Или надо удалить задание, зайти под нужным пользователем и создать новое пакетное задание?
Старый 30.12.2013, 18:10   #2  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Поменять нельзя, надо запускать от имени того пользователя.
__________________
Ivanhoe as is..
За это сообщение автора поблагодарили: AnGor (1).
Старый 30.12.2013, 19:22   #3  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,691 / 1195 (43) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
В пакетном режиме запуск выполняется от имени того пользователя, код которого записан в поле таблицы Batch.CreatedBy. Соответственно, подмена пользователя - это изменение этого системного поля. Ну, для порядка, еще неплохо бы сделать аналогичную замену в поле таблицы BatchJob.CreatedBy.

Как менять CreateBy это смотрите здесь: Програмно изменить createdBy

PS: Если Вы не программист, то в стандартном интерфейсе такая операция не предусмотрена. Тогда только тот вариант, который описал Ivanhoe
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...

Последний раз редактировалось Владимир Максимов; 30.12.2013 в 19:26.
Старый 30.12.2013, 20:58   #4  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Поменять пользователя, под которым запускается..
[Вы такое понятие - "безопасность" - знаете?]

Шепотом...

Если знаете - вы УЖЕ знаете ответ на Ваш вопрос..

==

Не, млин.. а дальше из этого batch jod - улетит NNN +++ денег.. куда-то..

Каб примерно такого же не было б недавно - не говорил бы.. правда,.

==

Да, и с Новым Годом всех.. думать головой - Новый Год - не отменяет..

Strictly IMXO.. ну.. понятно ))
__________________
Best Regards,
Roman

Последний раз редактировалось RVS; 30.12.2013 в 21:09.
Старый 31.12.2013, 11:23   #5  
AnGor is offline
AnGor
Участник
Аватар для AnGor
 
97 / 46 (2) +++
Регистрация: 30.08.2007
Адрес: Ulm
Записей в блоге: 6
подменил createtby апдейтом через sql. Заработало под указанным пользователем.
А ведь и действительно - можно под кем угодно запустить пакость.
Старый 31.12.2013, 14:22   #6  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,732 / 406 (17) +++++++
Регистрация: 23.03.2006
доступ к рабочему sql-серверу разработчики не должны иметь
Старый 31.12.2013, 14:55   #7  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
В AX 2012 доступ к разработке, кстати, есть только у роли Системный администратор, которой доступно все
__________________
Ivanhoe as is..
Старый 01.01.2014, 16:02   #8  
db is offline
db
Роман Долгополов (RDOL)
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
 
393 / 692 (24) +++++++
Регистрация: 01.04.2004
Адрес: Москва
а чем runAs(юзер, класс, метод) не угодила? для этого, в принципе, и предназначена. штатная команда x++ - никаких извращений с прямым sql, подменой системных полей и прочим подобным
За это сообщение автора поблагодарили: AnGor (1).
Старый 02.01.2014, 21:41   #9  
AnGor is offline
AnGor
Участник
Аватар для AnGor
 
97 / 46 (2) +++
Регистрация: 30.08.2007
Адрес: Ulm
Записей в блоге: 6
Цитата:
Сообщение от db Посмотреть сообщение
а чем runAs(юзер, класс, метод) не угодила? для этого, в принципе, и предназначена. штатная команда x++ - никаких извращений с прямым sql, подменой системных полей и прочим подобным
тогда нужно отдельный класс писать, который бы запускал другие классы в пакетниках. Идея была - побыстрому поменять кучку пакетных заданий, которые запускались от "не легального" пользователя, которого хотели прикрыть в эктивдиректори. Хотя предложенный метод очень правильный, не такой вандальный - согласен.
Старый 10.01.2014, 11:26   #10  
someOne is offline
someOne
Участник
Аватар для someOne
 
174 / 429 (15) +++++++
Регистрация: 11.12.2008
Адрес: Москва
Цитата:
Сообщение от AnGor Посмотреть сообщение
Возникла задача - поменять пользователя, от имени которого запускается пакетное задание. Как это можно сделать?
Или надо удалить задание, зайти под нужным пользователем и создать новое пакетное задание?
Вот готовые коды методов, которые позволяют изменить имя от которого запускаются пакетные задания:

X++:
    global::executeSql(strFmt("update Batch set ExecutedBy = 'вася', CreatedBy = 'вася' where recId = %1", Batch.RecId));
    global::executeSql(strFmt("update BatchJob set CreatedBy = 'вася' where recId = %1", Batch.BatchJobId));
Batch и BatchJob - это журнал пакетных заданий и само пакетное задание.
где
X++:
static server void executeSql(str _sql)
{
    SqlSystem       sqlSystem       = new SqlSystem();
    Connection                      connection;
    Statement                       statement;
    SqlStatementExecutePermission   permission;
    ;

    connection  = new Connection();
    statement = connection.createStatement(ResultSetType::Dynamic, ResultSetConcurrency::Updatable);
    sqlSystem   = new SqlSystem();

    connection.ttsbegin();

    permission = new SqlStatementExecutePermission(_sql);
    permission.assert();

    statement.executeUpdate(_sql);
    CodeAccessPermission::revertAssert();

    connection.ttscommit();
}
За это сообщение автора поблагодарили: raz (1), AnGor (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Web Service Sharepoint и вход по имени пользователя чере Net Business Connector Murlin DAX: Программирование 13 23.08.2012 11:14
Как сделать: пакетное задание в AX 2009 чаще 3 минут EVGL DAX: Администрирование 14 15.04.2011 10:43
Пакетное задание в статусе "Выполнение" висит больше 4 дней. Poleax DAX: Функционал 4 19.08.2010 14:11
Старт АОС от имени пользователя egorych DAX: Администрирование 5 19.09.2007 12:52
Длина имени пользователя sk45 DAX: Функционал 3 10.06.2003 16:07

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 03:02.