Я новичок в Java Безопасность весны. Я смог успешно добавить некоторые заголовки HTTP и развернуть их с помощью кода, который я имею ниже.
После того как основные HTTP-заголовки c заработали, я также добавил заголовки для Strict-Transport-Security. Кажется, он работает локально, однако после развертывания значение переопределяется.
Я говорил с некоторыми из наших архитекторов, и они не верят, что между этим приложением Java и браузером есть что-то, что может перезаписывать / заменять значения. Они думают, что весной это может быть что-то, что борется с кодом, который у меня здесь есть.
Интересно, есть ли у кого-нибудь опыт с этим и мог бы дать какой-нибудь совет.
Я включил несколько скриншотов что Chrome показывает мне для заголовков.
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
response.setHeader("Content-Security-Policy",
"default-src https: http: 'unsafe-inline' 'unsafe-eval'; " +
"script-src 'self' 'unsafe-inline' 'unsafe-eval'; " +
"object-src 'none'; " +
"base-uri 'self'; " +
"frame-ancestors 'self'; " +
"form-action https: http: 'self'; "
);
response.setHeader("Strict-Transport-Security",
"max-age=0; " +
"Cache-Control: no-cache, no-store, must-revalidate, private; " +
"Pragma: no-cache; " +
"Expires: 0; " +
"includeSubDomains"
);
response.setHeader("Upgrade-Insecure-Requests", "1");
response.setHeader("X-Frame-Options", "DENY");
response.setHeader("X-XSS-Protection", "1; mode=block");
response.setHeader("Referrer-Policy", "no-referrer-when-downgrade");
super.postHandle(request, response, handler, modelAndView);
}
}```
[![local deployed changes][1]][1]
[![server deployed changes][2]][2]
[1]: https://i.stack.imgur.com/3LGEd.png
[2]: https://i.stack.imgur.com/8NAMn.png