|
@@ -0,0 +1,26 @@
|
|
|
+package com.ccgj.platform.interceptor;
|
|
|
+
|
|
|
+import javax.servlet.*;
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.io.IOException;
|
|
|
+
|
|
|
+public class SecurityHeadersFilter implements Filter {
|
|
|
+ @Override
|
|
|
+ public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
|
|
|
+ HttpServletResponse httpResponse = (HttpServletResponse) response;
|
|
|
+ // 设置安全头
|
|
|
+ httpResponse.setHeader("X-Content-Type-Options", "nosniff");
|
|
|
+ httpResponse.setHeader("X-Frame-Options", "SAMEORIGIN");
|
|
|
+ httpResponse.setHeader("X-XSS-Protection", "1; mode=block");
|
|
|
+ httpResponse.setHeader("Content-Security-Policy", "default-src 'self'");
|
|
|
+ httpResponse.setHeader("Strict-Transport-Security", "max-age=31536000; includeSubDomains");
|
|
|
+
|
|
|
+ chain.doFilter(request, httpResponse);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void init(FilterConfig filterConfig) {}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void destroy() {}
|
|
|
+}
|