org.springframework.security.config.annotation.web.configurers
Class HeadersConfigurer<H extends HttpSecurityBuilder<H>>

java.lang.Object
  extended by org.springframework.security.config.annotation.SecurityConfigurerAdapter<DefaultSecurityFilterChain,B>
      extended by org.springframework.security.config.annotation.web.configurers.HeadersConfigurer<H>
All Implemented Interfaces:
SecurityConfigurer<DefaultSecurityFilterChain,H>

public final class HeadersConfigurer<H extends HttpSecurityBuilder<H>>
extends SecurityConfigurerAdapter<DefaultSecurityFilterChain,B>

Since:
3.2
See Also:
RememberMeConfigurer

Constructor Summary
HeadersConfigurer()
          Creates a new instance
 
Method Summary
 HeadersConfigurer<H> addHeaderWriter(HeaderWriter headerWriter)
          Adds a HeaderWriter instance
 HeadersConfigurer<H> cacheControl()
          Adds CacheControlHeadersWriter.
 void configure(H http)
          Configure the SecurityBuilder by setting the necessary properties on the SecurityBuilder.
 HeadersConfigurer<H> contentTypeOptions()
          Adds XContentTypeOptionsHeaderWriter
 B disable()
          Disables the AbstractHttpConfigurer by removing it.
 HeadersConfigurer<H> frameOptions()
          Adds XFrameOptionsHeaderWriter with all the default settings.
 HeadersConfigurer<H> httpStrictTransportSecurity()
          Adds HstsHeaderWriter.
 T withObjectPostProcessor(ObjectPostProcessor<?> objectPostProcessor)
           
 HeadersConfigurer<H> xssProtection()
          Adds XXssProtectionHeaderWriter.
 
Methods inherited from class org.springframework.security.config.annotation.SecurityConfigurerAdapter
addObjectPostProcessor, and, getBuilder, init, postProcess, setBuilder
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HeadersConfigurer

public HeadersConfigurer()
Creates a new instance

See Also:
HttpSecurity.headers()
Method Detail

addHeaderWriter

public HeadersConfigurer<H> addHeaderWriter(HeaderWriter headerWriter)
Adds a HeaderWriter instance

Parameters:
headerWriter - the HeaderWriter instance to add
Returns:
the HeadersConfigurer for additional customizations

contentTypeOptions

public HeadersConfigurer<H> contentTypeOptions()
Adds XContentTypeOptionsHeaderWriter

Returns:
the HeadersConfigurer for additional customizations

xssProtection

public HeadersConfigurer<H> xssProtection()
Adds XXssProtectionHeaderWriter. Note this is not comprehensive XSS protection!

Returns:
the HeadersConfigurer for additional customizations

cacheControl

public HeadersConfigurer<H> cacheControl()
Adds CacheControlHeadersWriter.

Returns:
the HeadersConfigurer for additional customizations

httpStrictTransportSecurity

public HeadersConfigurer<H> httpStrictTransportSecurity()
Adds HstsHeaderWriter.

Returns:
the HeadersConfigurer for additional customizations

frameOptions

public HeadersConfigurer<H> frameOptions()
Adds XFrameOptionsHeaderWriter with all the default settings.

Returns:
the HeadersConfigurer for additional customizations

configure

public void configure(H http)
               throws Exception
Description copied from interface: SecurityConfigurer
Configure the SecurityBuilder by setting the necessary properties on the SecurityBuilder.

Specified by:
configure in interface SecurityConfigurer<DefaultSecurityFilterChain,H extends HttpSecurityBuilder<H>>
Overrides:
configure in class SecurityConfigurerAdapter<DefaultSecurityFilterChain,H extends HttpSecurityBuilder<H>>
Throws:
Exception

disable

public B disable()
Disables the AbstractHttpConfigurer by removing it. After doing so a fresh version of the configuration can be applied.

Returns:
the HttpSecurityBuilder for additional customizations

withObjectPostProcessor

public T withObjectPostProcessor(ObjectPostProcessor<?> objectPostProcessor)