2012-10-21 11 views
6

Zamierzam jednoznacznie zidentyfikować użytkownika, przechowując unikalny identyfikator w jego pliku cookie. Identyfikator HttpSession jest dobrym wyborem z mojej wyszukiwarki Google. Chciałem tylko wiedzieć, jakie to wyjątkowe? Czy jest to unikalne dla kontenerów sieci Web, czy po wygaśnięciu, czy zostanie ono zregenerowane? Jeśli się powtórzy, cały mój login użytkownika może przejść do rzutu. Kilka opinii ekspertów na temat używania sezsonidu jako unikalnego identyfikatora dla moich użytkowników.Jak wyjątkowy jest identyfikator HttpSession?

+0

Wydaje się, że można powiedzieć, że będzie to zależało od używanego kontenera serwletu; co, jak sądzę, wzmacnia ideę, że możesz po prostu łatwo użyć własnego "unikalnego generatora id". –

Odpowiedz

2

Identyfikator sesji musi jednoznacznie identyfikować sesję na serwerze lub w klastrze serwerów. Nie masz żadnej gwarancji wyjątkowości przy ponownym uruchomieniu. Dlaczego po prostu nie użyjesz sekwencji baz danych lub UUID?

+0

dziękuję za twoją opinię, więc użyję wtedy UUID. – cherit

7

Identyfikatory sesji są unikalne i znaczące tylko przez cały czas trwania sesji. Identyfikator sesji identyfikuje sesję: nic więcej, nic mniej. Nie identyfikuje użytkownika.

Nie można i nie należy polegać na identyfikatorach sesji, które kiedykolwiek zostały ponownie użyte, nie mówiąc już o tym samym użytkowniku.

Powiązane problemy