Как на самом деле работает SecurityContextHolder в Spring Security?

Если я правильно понимаю, SecurityContextHolder используется для хранения информации об аутентификации ТЕКУЩЕГО пользователя на сайте. Например, чтобы запомнить пользователя после входа на сайт мы можем использовать

Authentication auth = authenticationManager.authenticate(user);
SecurityContextHolder.getContext().setAuthentication(auth);

Но, по идее, эта аутентификация должна быть видна только КОНКРЕТНОМУ ОДНОМУ потоку, который обработал запрос входа пользователя.

Если этот SecurityContext ассоциируется только с этим конкретным потоком, но следующий запрос на сайт обрабатывает другой поток, то почему ему видна эта аутентификация, если им владеет другой поток?


Ответы (0 шт):