Wymieszaj sesje - httpd apache z mod_jk, tomcat, spring security - serwowanie danych innego użytkownika
Ostatnio napotkaliśmy poważny problem, że jeden użytkownik otrzymał dane innego użytkownika. Ten problem jest prawie niemożliwy do odtworzenia.
Korzystamy ze standardowego zarządzania zalogowanymi użytkownikami zapewnianego przez Spring-security i jesteśmy pewni, że problem nie polega na przechowywaniu użytkownika w zmiennej instancji lub podobnych elementach współbieżności w naszej aplikacji.
Naprawdę wątpimy, że problem dotyczy SpringSecurity lub samego Tomcata.
Nasz serwer frontowy to httpd apache, połączony z tomcatem przez złącze ajp (mod_jk). Nie wykonujemy żadnego równoważenia obciążenia (httpd dba o SSL, niektóre przepisują adres URL i obsługują niektóre moduły php)
Oto nasza konfiguracja:
## OS
OS Name: Linux
OS Version: 2.6.32-5-686
Architecture: i386
## Apache httpd
Server version: Apache/2.2.16 (Debian)
Server built: Sep 4 2011 20:27:42
## mod_jk
mod_jk/1.2.30 (installed via apt-get)
## JVM
JVM Version: 1.6.0_18-b18
JVM Vendor: Sun Microsystems Inc.
## Tomcat
Server version: Apache Tomcat/6.0.28
Server built: February 12 2011 1443
Winimy httpd / mod_jk z tego połączenia sesji, więc naszym jedynym rozwiązaniem byłoby usunięcie httpd z apache. Zanim jednak opuścimy tę popularną i powszechnie używaną konfigurację, chcielibyśmy wiedzieć, czy ktoś napotkał podobny problem.
Jedyne podobne problemy, które znalazłem, dotyczyły równoważenia obciążenia lub mod_jk.
Czy kiedykolwiek napotkałeś podobny problem? Wszelkie wskazówki, pomysły, linki lub doświadczenia będą bardzo mile widziane. Dzięki!