Saltar al contenido

Desactivar HttpOnly Spring boot

Verificamos exhaustivamente cada sección de nuestro espacio con el objetivo de mostrarte siempre la información más veraz y actual.

Solución:

Otra alternativa a la respuesta aceptada que encaja en Spring Boot es anular el método de personalización de su EmbeddedServletContainerCustomizer.

Primero, implemente la interfaz:

@Configuration
@ComponentScan
@EnableAutoConfiguration
public class Application implements EmbeddedServletContainerCustomizer

Luego agregue una anulación para el método de personalización:

@Override
public void customize(final ConfigurableEmbeddedServletContainer container)

    ((TomcatEmbeddedServletContainerFactory) container).addContextCustomizers(new TomcatContextCustomizer()
    
        @Override
        public void customize(Context context)
        
            context.setUseHttpOnly(false);
        
    );

Por cierto, descubrí que httpOnly no estaba configurado en absoluto para mí… así que tuve que usar este método para activar httpOnly (obviamente, mi configuración anterior es ‘true’).

También puede usar este método para ajustar otras cosas en tomcat, como activar gzip para json y expandir el tamaño máximo del encabezado http (en el caso de la autenticación kerberos, necesitaba hacer esto):

((TomcatEmbeddedServletContainerFactory) container).addConnectorCustomizers(new TomcatConnectorCustomizer()

    @Override
    public void customize(final Connector connector)
    
        AbstractHttp11Protocol httpProtocol = (AbstractHttp11Protocol) connector.getProtocolHandler();
        httpProtocol.setMaxHttpHeaderSize(65536);
        httpProtocol.setCompression("on");
        httpProtocol.setCompressionMinSize(256);
        String mimeTypes = httpProtocol.getCompressableMimeTypes();
        String mimeTypesWithJson = mimeTypes + "," + MediaType.APPLICATION_JSON_VALUE;
        httpProtocol.setCompressableMimeTypes(mimeTypesWithJson);
    
);

server.servlet.session.cookie.http-only=false 

(Propiedad actualizada)

Referencia https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html

Al menos en Spring Boot> = 1.4, es aún más fácil, solo use la siguiente propiedad:

server.servlet.session.cookie.http-only= # "HttpOnly" flag for the session cookie. configuration property.

como consta en la documentación oficial.

Si eres capaz, eres capaz de dejar un post acerca de qué te ha parecido esta reseña.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *