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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.06.2025, 01:17   #1  
Товарищ ♂uatr is offline
Товарищ ♂uatr
Участник
Аватар для Товарищ ♂uatr
MCBMSS
 
323 / 903 (31) +++++++
Регистрация: 23.10.2012
Post Business Connector injection
Всем привет.
В ночной беседе с коллегой добрались до темы Business Connector'а.
У объектов "Microsoft.Dynamics.BusinessConnectorNet.Axapta" и "Microsoft.Dynamics.BusinessConnectorNet.AxaptaRecord" есть функции "ExecuteStmt".
Как известно, эта - обёртки над runTime-компиляцией кода по заданному шаблону.
Возник вопрос - "не уязвимость ли это?". Забегая наперёд - да, это может быть использовано как уязвимость, но для этого должны выстроиться множество тел Солнечной системы. Поэтому данная тема, скорее, носит ознакомительный характер.

Если в случае с функцией record'а используется шаблон:
static void ComExecuteStmt(%1 _axTbl_0) { %2;}
Об этом любезно информирует BC если несуразицу ему какую-то в качестве параметра передать:
Unable to compile "static void ComExecuteStmt(Common axTbl_0) { наборсимволов2;} ".'
То наличие аналогичной функции на объекте Axapta с шаблоном "static void ComExecuteStmt(){ %1 }" вызывает полное непонимание с позиции области её применения.
Никто не запрещает написать код вида:
X++:
ax.ExecuteStmt("runBuf('void test(){Table1 t1;; t1.doInsert();}')");
Который успешно отработает.
Догадываюсь, что BC в современных реалиях не используется, а на его смену пришел AIF. Который, в свою очередь, является всё той же обёрткой над BC...
За это сообщение автора поблагодарили: S.Kuskov (10).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Inside Dynamics AX 4.0: Inside the Business Connector Blog bot DAX Blogs 0 04.10.2007 05:15

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

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

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