Переопределить ограничение безопасности в Jetty 9

Мы принудительно перенаправляем с http на https, используя политику ограничения безопасности, установленную на CONFIDENTIAL. Хотя в местном развитии мы хотим снять ограничение. С Jetty 7 мы использовали override-web.xml это переназначало безопасность на транспорте с КОНФИДЕНЦИАЛЬНО на НЕТ. Теперь, когда мы перешли на Jetty 9, он внезапно перестал это делать. Я подозреваю, что теперь с Jetty 9 вместо переопределения безопасности транспорта это добавляет ограничение в список.

Как переопределить ограничение безопасности с КОНФИДЕНЦИАЛЬНО на НЕТ в локальной среде?

Это та часть, которая исходит от web.xml:

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Some server</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>

В локальном развитии мы запускаем причал с помощью jetty-maven-plugin и определяем override-web.xml, Это та часть, которая исходит от override-web.xml:

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Some server</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>NONE</transport-guarantee>
    </user-data-constraint>
</security-constraint>

Версия причала до: 7.6.10.v20130312
Версия причала после: 9.2.18.v20160721

1 ответ

Решение

Эта функциональность должна работать в Jetty 9 как в Jetty 7,

Вы можете найти WebApp configuration инструкции отсюда

Они немного изменили теги в Jetty 9 так что будьте особенно внимательны при чтении конфигурации. Вы должны иметь что-то подобное в вашем pom.xml:

<configuration>
<webApp>
<overrideDescriptor>{path_to_your_override_xml}</overrideDescriptor>
</webApp>
</configuration>

Например, тег

<webApp> </webApp>

было раньше

<webAppConfig> </webAppConfig>

Следовать Jetty startup log и убедитесь, что ваши переопределения применяются:

[INFO] Web overrides = {path_to_your_override_xml}
Другие вопросы по тегам