HTTP Security: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 40: | Line 40: | ||
* [[JConsole]] | * [[JConsole]] | ||
* [[Cypress]] | * [[Cypress]] | ||
* [[Spring]] | |||
* [[HTTPie]] | * [[HTTPie]] | ||
* [[JQ Tool]] | * [[JQ Tool]] | ||
Line 47: | Line 48: | ||
| valign="top" | | | valign="top" | | ||
* [[Spring Exception Handling]] | |||
* [[Java/Security]] | |||
* [[Java]] | |||
| valign="top" | | | valign="top" | | ||
|} | |} |
Revision as of 20:54, 5 February 2024
@Component
@WebFilter(urlPatterns = {"/*"})
public class ResponseHeaderWebFilter implements Filter {
@Override
public void doFilter(
ServletRequest request,
ServletResponse response, FilterChain chain
) throws IOException, ServletException {
HttpServletResponse httpServletResponse = (HttpServletResponse) response;
httpServletResponse.setHeader("Content-Security-Policy", "default-src 'self' 'unsafe-inline' 'unsafe-eval' data: blob:;");
httpServletResponse.setHeader("Strict-Transport-Security", "max-age=31536000 ; includeSubDomains ; preload");
httpServletResponse.setHeader("Permissions-Policy", "geolocation 'self'; payment 'none'");
httpServletResponse.setHeader("X-Content-Type-Options", "nosniff");
httpServletResponse.setHeader("Referrer-Policy", "strict-origin-when-cross-origin");
httpServletResponse.setHeader("X-Frame-Options", "DENY");
chain.doFilter(request, response);
}
}
References
| ||