Как я могу предоставить пользовательский log4j.xml для различных задач Ant?

X-XSS-Protection

Заголовок ответа HTTP X-XSS-Protection - это функция Internet Explorer, Chrome и Safari, которая останавливает загрузку страниц при обнаружении отраженных межсайтовых сценариев. ( XSS ) атак. Хотя эти средства защиты в значительной степени не нужны в современных браузерах, когда сайты реализуют строгую Content-Security-Policy , которая запрещает использование встроенного JavaScript ( 'unsafe-inline' ), они все же могут обеспечить защиту для пользователи старых веб-браузеров, которые еще не поддерживают CSP.

Header type               Response header
-----------               ---------------
Forbidden header name     no

Синтаксис

  • X-XSS-Protection: 0: отключение фильтрации XSS.
  • X-XSS-Protection: 1: включает фильтрацию XSS (обычно по умолчанию в браузерах). Если обнаружена атака с использованием межсайтовых сценариев, браузер очистит страницу (удалит небезопасные части).
  • X-XSS-Protection: 1: mode = block Включает фильтрацию XSS. Вместо того, чтобы дезинфицировать страницу, браузер предотвратит рендеринг страницы, если обнаружена атака.
  • X-XSS-Protection: 1: report = (только хром) Включает фильтрацию XSS. Если обнаружена межсайтовая скриптовая атака, браузер очистит страницу и сообщит о нарушении. Это использует функциональность директивы CSP report-uri для отправки отчета.

Предпосылки

Согласно Намерение отправить: изменения в XSS Auditor Команда Chromium внесла два изменения:

  • ] Измените поведение по умолчанию на X-XSS-Protection: 1; mode=block, которое блокирует загрузку страницы путем перехода к уникальному источнику при обнаружении XSS, а не отфильтровывает конкретные сценарии.
  • Устаревший режим фильтра с намерением полностью удалить его в будущем.

Состояние реализации

Аудитор XSS блокирует по умолчанию : Аудитор XSS Chrome должен блокировать страницы по умолчанию, а не отфильтровывать подозрительно отраженную XSS. Более того, мы должны убрать опцию фильтрации, так как разрывы отдельных частей скрипта страницы были самим вектором XSS в прошлом.

Согласно XSS Auditor: Блокировать по умолчанию, удалить фильтрацию , эта проблема обсуждалась и была предпринята попытка исправить. Некоторое дополнительное обсуждение произошло в Ложных срабатываниях с ERR_BLOCKED_BY_XSS_AUDITOR и, наконец, в ERR_BLOCKED_BY_XSS_AUDITOR на добросовестном сайте при публикации на форуме Команда Chromium решила Статус: WontFix ]

Решение

Вам нужно активировать WebDriverWait , чтобы требуемый элемент был активным . Вот несколько примеров реализации WebDriverWait :

  • Java :

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.linkText("text_within_the _link"))).click(); 
    
  • Python :

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.LINK_TEXT, "text_within_the _link"))).click()
    
  • C # :

    new WebDriverWait(driver, TimeSpan.FromSeconds(10)).Until(ExpectedConditions.ElementToBeClickable(By.LinkText("text_within_the _link"))).Click();
    

Ссылка

5
задан manouti 15 July 2014 в 20:39
поделиться

4 ответа

Можно ли переместить файл log4j.xml, который находится в текущем рабочем каталоге?

0
ответ дан 14 December 2019 в 19:28
поделиться

Если я установил ANT_OPTS=-Dlog4j.configuration=Build/log4j.xml, прежде чем рабочий муравей, taskdefs правильно загрузят желаемый log4j.xml.

Вы попытались установить это свойство с помощью sysproperty?

Должен выглядеть примерно так:

<target name="define.jasper2">
   <sysproperty key="log4j.configuration" value="Build/log4j.xml"/>
   ...
</target>
0
ответ дан 14 December 2019 в 19:28
поделиться

Log4j загружает свою конфигурацию путем поиска системного свойства log4j.configuration. Приводя это к сбою, это ищет log4j.properties или log4j.xml на пути к классу.

На некоторых задачах Ant, которые разветвляют новую JVM, можно указать log4j.configuration системное свойство с <jvmarg/> тег. Однако на тех, которые не, Ваш лучший выбор состоит в том, чтобы создать запись пути к классу, первая запись которой является log4j конфигурацией, которую требуется использовать.

2
ответ дан 14 December 2019 в 19:28
поделиться

Я могу указать файл конфигурации, используя относительный URL-адрес файла с sysproperty следующим образом:

<java classname="com.lunatech.MainClass">
   <sysproperty key="log4j.configuration" value="file:src/log4j-debug.properties"/>
   <classpath refid="runtime.classpath"/>
</java>
3
ответ дан 14 December 2019 в 19:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: