Оформление
Валидация пользовательского ввода - Справка FineReport | Разработка отчетов | Отчеты | Учебные пособия
Проверка правильности ввода данных пользователем
1. Обзор
1.1 Версия
| Версия сервера FineBI | Функциональные изменения |
|---|---|
| 6.0.10 | - |
1.2 Сценарии применения
Серверная сторона принимает пользовательский ввод и использует его как часть веб-приложения.
Если пользовательский ввод содержит вредоносный код, серверная часть примет и выполнит его, что приведет к утечке информации, выполнению кода и другим проблемам.
1.3 Функциональный профиль
В версии 6.0.10 и более поздних версиях проекта добавлена функция "Верификация пользовательского ввода".
По умолчанию включена функция"Проверка пользовательского ввода", которая проверяет пользовательский ввод в определенных сценариях в системе FineBI и может эффективно фильтровать вредоносные коды для обеспечения безопасности системы.
Если введенное пользователем содержимое содержит нелегальный контент, при нажатии кнопки "OK" или "Сохранить" будетзаблокировано сохранение введенного содержимого и выдано всплывающее сообщение, какпоказано на рисунке ниже:

2. Функциональная презентация
2.1 Включение/отключение контрольных сумм
Супер-администратор может включить/выключить проверку ввода пользователя, изменив следующие элементы конфигурации в таблице fine_conf_entity проекта.
Примечание: таблица Project fine_conf_entity не существует в конфигурации проверки пользовательского ввода по умолчанию, вам необходимо вручную добавить поля и ввести их в действие после перезапуска проекта, метод добавления см. в разделе: заполнение модификации fine_conf_entity.
| элемент конфигурации | значение конфигурации | скрытый смысл |
|---|---|---|
| WebSecurityConfig.enableParameterVerify | правда | Включить проверку вводимых пользователем данных (по умолчанию) |
| ложь | Отключите проверку ввода данных пользователем |
2.2 Содержание калибровки
Если функция проверки пользовательского ввода включена, она будет проверять вводимые пользователем данные в определенных сценариях ввода в системе FineBI , конкретные сценарии см. в разделе 2.3.
Если введенное пользователем содержимое содержит части, соответствующие следующему регулярному выражению, то при нажатии кнопки "OK" или "Сохранить" оно не позволит ввести "OK" или "Сохранить" и выдаст сообщение в верхней части поля ввода: "В вводимых данных есть недопустимые символы безопасности XXX".
Примечание: Если вводимые данные содержат несколько недопустимых символов, то на экран выводится сообщение только о первом недопустимом символе, обнаруженном в результате проверки.
| Тип калибровки | регулярный (фигура в геометрии) |
|---|---|
| незаконный характер | " |
| < | |
| > | |
| & | |
| Нелегальные ключевые слова | /script |
| javascript. | |
| onblur | |
| getRuntime | |
| ProcessBuilder | |
| java.lang.ProcessImpl |
2.3 Сценарии калибровки
| модуль (в программном обеспечении) | Сценарии калибровки | Содержание калибровки |
|---|---|---|
| Управление каталогом | Добавить шаблон/редактировать шаблон | Название шаблона, описание |
| Добавление метки отчетности/редактирование метки отчетности | Название тега, описание | |
| Добавить ссылку/редактировать ссылку | Название ссылки, описание | |
| Добавление каталога/редактирование каталога | Название каталога, описание | |
| Добавить дом/редактировать дом | Название главной страницы, примечания | |
| управление пользователями | Добавить пользователя/редактировать пользователя | имя пользователя и фамилияПримечание: Проверка ввода пользователя не поддерживается при импорте и синхронизации пользователей. |
| Добавить отдел/отредактировать отдел | Название отдела | |
| Добавить роль/редактировать роль | Имя роли, Примечания к роли | |
| Конфигурация внешнего вида | страница входа | Логин Название |
| Стиль платформы | Название платформы | |
| управление системой | Общие>Общие параметры | Имя пути сервлета |
| Почтовый ящик > Настройки учетной записи отправителя | Электронная почта Показать имя | |
| подключение данных | Управление соединениями данных > Новое соединение данных | Имя подключения данных |
| Управление соединениями данных > Переименовать имя соединения данных | Имя подключения данных | |
| Серверный набор данных > Создать набор данных | Имя набора данных | |
| Набор данных сервера > Переименовать имя набора данных | Имя набора данных | |
| Конфигурация карты | Географическая информация>Добавить каталог | Название карты |
| Географическая информация>Переименование названий карт | Название карты | |
| Пользовательские изображения > Добавить пользовательское изображение | Название картины | |
| Пользовательское изображение > Переименовать имя изображения | Название картины |