So konfigurieren Sie Tomcat, um die Sitzungs-ID nicht in die URL zu codieren, wenn HttpServletResponse.encodeURL () aufgerufen wird

8

Scheint wie eine dumme Frage, auf die die Antwort lauten würde: "Benutze nicht encodeURL ()!" Aber ich arbeite mit einer Codebase, die in den JSPs Netui-Anchor-Tags verwendet, und ich muss das Schreiben von JSESSIONID in die URLs deaktivieren, da dies ein Sicherheitsrisiko darstellt.

In WebLogic können Sie dies konfigurieren, indem Sie die URL-Rewriting-Funktion in weblogic.xml konfigurieren (ich weiß, weil ich diese Funktion auf dem WebLogic-Server geschrieben habe!). Allerdings kann ich für Tomcat keine entsprechende Konfigurationsoption finden.

    
Alex Worden 16.02.2010, 22:35
quelle

2 Antworten

5

Es fällt mir keine Einstellung ein. Aber das ist ziemlich einfach zu tun, indem man einen Filter des ersten Eintrags auf dem url-pattern von Interesse (vielleicht /* ?) Erzeugt und das ServletResponse durch ein HttpServletResponseWrapper Implementierung, wobei das encodeURL() das gleiche Argument unverändert zurückgibt.

Kickoff-Beispiel:

%Vor%     
BalusC 16.02.2010, 22:46
quelle
9

Tomcat 6 unterstützt das Attribut disableURLRewriting , das in Ihrem Context-Element auf true gesetzt werden kann:

Ссылка

    
Bart 04.10.2011 20:31
quelle

Tags und Links