Как мы можем включить HSTS (HTTP Strict-Transport-Security) на сервере weblogic

Я хочу преобразовать http-запрос в https для своего сайта. Я уже взял сертификат SSL, но может быть шанс обойти шифрование, включенное моим приложением, и после получения сертификата мое приложение не сможет предотвратить доступ через небезопасное соединение.


person Rakesh Bhagat    schedule 16.08.2016    source источник


Ответы (3)


К сожалению, нет простого способа включить это в weblogic (простой в виде простого флажка).

Ваш лучший вариант, вероятно, - добавить свой собственный фильтр для добавления заголовка HSTS. Посмотрите, как это сделать: https://stackoverflow.com/a/30455120/1391209

Вот соответствующий текст ответа для более удобного использования (и в случае, если этот ответ будет удален):

Вы можете добавить его с помощью фильтра. Добавьте в web.xml следующий фрагмент:

<filter>
    <filter-name>HSTSFilter</filter-name>
    <filter-class>security.HSTSFilter</filter-class>
</filter>

А затем создайте фильтр в своем веб-приложении:

package security;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;

public class HSTSFilter implements Filter {

    public void doFilter(ServletRequest req, ServletResponse res,
        FilterChain chain) throws IOException, ServletException {
        HttpServletResponse resp = (HttpServletResponse) res;

        if (req.isSecure())
            resp.setHeader("Strict-Transport-Security", "max-age=31622400; includeSubDomains");

        chain.doFilter(req, resp);
    }
}
person Slettal    schedule 16.08.2016
comment
Прошу прощения. Неужели нужно просто поместить этот фрагмент на web.xml и создать класс фильтра? Я вижу, что справочный вопрос (часть вопроса) также выполняет перенаправление на jsp. Это обязательно? - person Yeung; 02.05.2017
comment
@Yeung Это действительно так. Он также работает с другими технологиями, такими как jsf (не только jsp), пока запрос проходит через механизм сервлета. Подробнее об этом можно прочитать здесь: oracle.com/technetwork/java/filters- 137243.html - person Slettal; 03.05.2017

используйте этот код в своем web.config

<system.webServer>
    <httpProtocol>
        <customHeaders>
            <add name="Strict-Transport-Security" value="max-age=31536000"/>
        </customHeaders>
    </httpProtocol>
</system.webServer>
person Mahmoud Bayoush    schedule 24.11.2016

Используйте системное свойство -Dweblogic.http.headers.enableHSTS=true JVM для Oracle Weblogic Server 12.2.1.4 или более поздних версий. Более старые наборы / выпуски исправлений с примененным обновлением набора исправлений за октябрь 2019 г. также имеют обратный перенос этой функции.

person David Lakatos    schedule 03.06.2020