Estoy usando un proxy inverso (Apache) delante de Jetty 6. Los usuarios se conectan a Apache con SSL y Apache envía algunas de las solicitudes a Jetty a través de HTTP simple. Quiero que Jetty use cookies de sesión seguras.Jetty cookies de sesión segura cuando está detrás del proxy inverso usando HTTP
Uno pensaría que esto sería lo primero que alguien haría después de instalar Jetty, pero me está costando mucho hacerlo funcionar.
Configuré Jetty para utilizar cookies seguras como se describe en another stackoverflow question. Sin embargo, Jetty se niega a usar cookies seguras, supongo que se debe a que la conexión del proxy inverso no es SSL.
Intenté convencer a Jetty de que está trabajando en una solicitud que vino a través de SSL siguiendo una descripción en sonatype.com. Es decir, añadí lo siguiente en Apache:
RequestHeader set X-Forwarded-Scheme "https"
y en /etc/jetty/jetty.xml:
<Set name="handler">
<New id="Handlers" class="org.mortbay.jetty.handler.rewrite.RewriteHandler">
<Set name="rules">
<Array type="org.mortbay.jetty.handler.rewrite.Rule">
<Item>
<New id="forwardedHttps"
class="org.mortbay.jetty.handler.rewrite.ForwardedSchemeHeaderRule">
<Set name="header">X-Forwarded-Scheme</Set>
<Set name="headerValue">https</Set>
<Set name="scheme">https</Set>
</New>
</Item>
</Array>
</Set>
<Set name="handler">
<New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">
<Set name="handlers">
<Array type="org.mortbay.jetty.Handler">
<Item>
<New id="Contexts" class="org.mortbay.jetty.handler.ContextHandlerCollection"/>
</Item>
<Item>
<New id="DefaultHandler" class="org.mortbay.jetty.handler.DefaultHandler"/>
</Item>
<Item>
<New id="RequestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/>
</Item>
</Array>
</Set>
</New>
</Set>
</New>
</Set>
Aún no hay galletas seguras. ¿Alguna sugerencia?