IBM Bluemix применяет https в приложении весенней загрузки (сгенерировано Jhipster)

Мне нужно принудительно использовать https в приложении с весенней загрузкой (сгенерированном jhipster), развернутом на IBM Bluemix. Я развертываю войну с весенней загрузкой без встроенного tomcat, в документации для cloudfoundry указано, что сам пакет сборки java предоставляет Tomcat, настроенный с помощью RemoteIPValve, поэтому я не нужно добавлять ниже заголовки, как указано во многих ответах на StackoverFlow.

server.tomcat.remote_ip_header=x-forwarded-for
server.tomcat.protocol_header=x-forwarded-proto

Я также добавил код ниже в конфигурации безопасности

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.requiresChannel().anyRequest().requiresSecure();
}

Тем не менее, мое приложение не перенаправляется на https.

Также я сомневаюсь, что однажды, если принудительное использование https выполняется на доменах bluemix, будет ли то же самое работать и для пользовательских доменов?

Спасибо, Васу


person Vasu Babu    schedule 27.09.2016    source источник
comment
вы пробовали security.require-ssl = true в свойствах приложения?   -  person David Steiman    schedule 28.09.2016
comment
да, Дэвид, я тоже пробовал, но это не сработало.   -  person Vasu Babu    schedule 28.09.2016


Ответы (1)


Конфигурация приложения Yaml

сервер:

  tomcat:
     remote_ip_header: x-forwarded-for
     protocol_header: x-forwarded-proto

Вышеупомянутые заголовки tomcat сообщают серверу, является ли исходный запрос http или https,

В методе configure (...), который переопределяет: configure (...) в ResourceServerConfigurerAdapter, мы должны добавить следующие строки

если (profile.equalsIgnoreCase (Константы.SPRING_PROFILE_PRODUCTION)) {http.requiresChannel (). anyRequest (). requiresSecure (); }

person Vasu Babu    schedule 14.02.2017