Заголовок "Strict-Transport-Security" дважды в ответ с приложением Swisscom CloudFoundry

При использовании решения Swisscom CloudFoundry с приложением Spring Boot два Strict-Transport-Security Заголовки добавляются в ответ HTTPS. Я рассмотрел эту проблему и обнаружил, что решение CloudFoundry добавляет несколько заголовков. Spring Boot по умолчанию уже добавляет Strict-Transport-Security заголовок тоже (на защищенных сайтах), что приводит к двум различным заголовкам HSTS.

Я хотел бы настроить заголовки моего приложения в моем приложении. Есть ли способ отключить автоматическое добавление заголовка решения Swisscom CloudFoundry?

Если нет, есть ли способ сказать Swisscom Cloud перезаписать существующие Strict-Transport-Security Заголовки вместо добавления его в список заголовков?

HTTP-ответ от приложения Spring Boot, развернутого Swisscom Cloud, затем содержит следующие два заголовка:

Strict-Transport-Security:max-age=31536000 ; includeSubDomains
Strict-Transport-Security:max-age=15768000; includeSubDomains

1 ответ

Решение

Спасибо за отчет. В настоящее время мы вставляем (но не заменяем) заголовки HSTS, так как мы не знали, что некоторые платформы добавляют его по умолчанию. Мы рассмотрим перезапись заголовка всегда, так как дублирующие заголовки, вероятно, не имеют смысла, и установленное по умолчанию значение подходит для большинства случаев использования.

На данный момент: Вы можете отключить настройку HSTS в Spring Boot? Согласно загрузочным документам Spring, вы можете отключить его с помощью следующего фрагмента:

@EnableWebSecurity
public class WebSecurityConfig extends
        WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            // ...
            .headers()
                .frameOptions().sameOrigin()
                .httpStrictTransportSecurity().disable();
    }
}

Обновление: мы скоро изменим это поведение: Appcloud установит заголовок, только если приложение еще не установило его. Таким образом, мы оставляем выбор за разработчиком, если и как он хочет внедрить HSTS, но это обеспечит дефолт.

Обновление 2: новое поведение на месте.

Другие вопросы по тегам