Отчеты c режимом вычисления Компиляция (Compilation) предоставляют возможность выполнять различные сценарии, реализованные при помощи скриптового языка отчета.При этом, эти сценарии не всегда являются безопасными и, как результат, могут приводить к негативным ситуациям с точки зрения кибербезопасности. После анализа ситуации мы решили усовершенствовать политику безопасности относительно отчетов в режиме компиляции, но обо всем по порядку. Кстати, подробное сравнение режимов вычисления было представлено в этой статье.

Первая ступень защиты

Состоит в том, что при создании новых отчетов и дашбордов режим вычисления отчета по умолчанию установлен как Интерпретация (Interpretation). При необходимости, в любой момент можно его можно изменить. Для этого следует свойство шаблона отчета Режим вычисления (Calculation Mode) установить как Компиляция и после прочтения предупреждения нажать кнопку Переключиться на Компиляцию (Switch to Compilation).

Вторая ступень защиты

Состоит в том, что при помощи параметра и различных его значений можно определить поведение в случаях открытия отчетов с компиляцией в дизайнере или вьювере. Настройку поведения при открытии отчетов с компиляцией можно выполнить при помощи параметра Доступ к компиляции (Compilation Access) на вкладке Главная (Main) в меню Параметры (Options) дизайнера отчетов. В зависимости от выбранного значения будет определено поведение. Рассмотрим их более подробно.

1) Значение Спросить (Ask) предоставляет возможность определить поведение на основе пользовательского выбора. Другими словами, при попытке открытия отчета с компиляцией, пользователь должен будет выбрать один из вариантов:

  • Открыть в безопасном режиме (Open in Safe Mode), то есть режим вычисления для отчета будет принудительно установлен как Интерпретация;

  • Открыть (Open), то есть, загрузить отчет с режимом вычисления Компиляция, со всеми возможными рисками выполнения небезопасных сценариев;

  • Отмена (Cancel), то есть, прекратить загрузку отчета с компиляцией в дизайнер или вьювер отчетов.

Compilation
2) Значение Разрешить (Allow) позволяет загружать отчеты с компиляцией в дизайнер или вьювер без какого-либо уведомления. Является самым небезопасным режимом, поскольку при открытии отчетов пользователь не будет уведомлен о потенциальных рисках.

3) Значение Включить режим интерпретации (Force Interpretation) принудительно включает режим вычисления Интерпретация для всех отчетов при их открытии в дизайнере или вьювере.

4) Значение Запретить (Deny) позволяет сделать невозможным процесс открытия отчетов с режимом вычисления Компиляция в дизайнере или вьювере. При этом, пользователю будет отображено сообщение о запрете.

Кроме того, для компонентов Stimulsoft можно определить поведение при открытии отчетов с компиляцией при помощи опций. Например:
StiOptions.Designer.CompilationAccess == StiCompilationAccess.Allow;
Обратите внимание!

Для некоторых компонентов опции могут отсутствовать, например, опция CompilationAccess для JS-компонентов, поскольку в генераторе отчетов для JavaScript отсутствует режим компиляции, а все отчеты загружаются в режиме интерпретации. .
Таким образом, понимание и использование этих простых мер защиты от выполнения нежелательных сценариев, позволит значительно повысить безопасность при использовании продуктов Stimulsoft.
By using this website, you agree to the use of cookies for analytics and personalized content. Cookies store useful information on your computer to help us improve efficiency and usability. For more information, please read the privacy policy and cookie policy.