Как очистить зарегистрированные данные при использовании log4j2?

Мне нужно проверить журналы, записываемые в настоящее время, с помощью log4j2 для дезинфекции переданного ему ввода. Я вижу, что ESAPI API предоставляет возможность дезинфицировать переданный ему ввод.

Мой вопрос: я не уверен, как я могу использовать ESAPI с методами ведения журнала.

Есть ли что-то вроде фильтра или перехватчика, который мне нужно добавить при входе в мои методы, чтобы прозрачно фильтровать и дезинфицировать зарегистрированный текст соответственно, или я должен написать собственный класс Logger, который расширяет базовый класс Logger, а затем регистрирует соответственно, обертывая вызов API ESAPI.

Если кто-то сталкивался с подобной проблемой, помогите пожалуйста.


person Volivattam Jaadu    schedule 05.12.2017    source источник


Ответы (1)


Я предполагаю, что под «дезинфицировать» вы имеете в виду такие вещи, как запутывание строк паролей и, возможно, замена идентификаторов токенами.

Log4j2 предоставляет добавление Rewrite, которое позволяет заменить LogEvent с другим LogEvent до того, как он будет передан целевому (например, файлу) Appender.

В качестве альтернативы вы можете использовать фильтры Log4j2, чтобы предотвратить переход к определенным (или всем) приложениям. Это может быть слишком радикальным для ваших нужд.

person Remko Popma    schedule 05.12.2017