public static void configureHeaders(HeadersConfigurer<?> configurer, SecurityProperties.Headers headers) throws Exception { if (headers.getHsts() != Headers.HSTS.NONE) { boolean includeSubdomains = headers.getHsts() == Headers.HSTS.ALL; HstsHeaderWriter writer = new HstsHeaderWriter(includeSubdomains); writer.setRequestMatcher(AnyRequestMatcher.INSTANCE); configurer.addHeaderWriter(writer); } if (!headers.isContentType()) { configurer.contentTypeOptions().disable(); } if (!headers.isXss()) { configurer.xssProtection().disable(); } if (!headers.isCache()) { configurer.cacheControl().disable(); } if (!headers.isFrame()) { configurer.frameOptions().disable(); } }