У меня есть два пользователя: A и B, если пользователь сначала использует логин, пользователь B не может войти в систему, используя пользователя. Выход из системы. Каждому пользователю требуется три регистрационной информации: storeId, storePassword, userPassword.Разрешить только один пользовательский вход в Spring Sercurity
Если пользователь В то же StoreID с пользователем А, не позволяют Войти
Если пользователь B отличается StoreID с пользователем А, позволяют Войти
Я использую ServletContext держать пользователей, зарегистрированных и при входе пользователь нажмет выход из системы , Я удалю этого пользователя из ServletContext. Но я не могу ханлить, когда пользователь закрывает броузер, чтобы закрыть выход из системы. Я думаю, что это не очень хорошая идея
Вот мой код
@Override
public void onLogoutSuccess(HttpServletRequest request,
HttpServletResponse response, Authentication authentication)
throws IOException, ServletException {
//redirectStrategy.sendRedirect(request, response, "/login");
// do whatever you want
ServletContext context = request.getSession().getServletContext();
Object _auths = context.getAttribute("_authentications");
if(_auths != null) {
List<String> auths = (List<String>) _auths;
auths.remove(authentication.getName());
if(auths.size() == 0) {
auths = new ArrayList<String>();
}
context.setAttribute("_authentications", auths);
}
super.onLogoutSuccess(request, response, authentication);
}
ли кто-нибудь дать мне хорошее решение? Спасибо
благодарим за быстрый ответ. Я немного запутался. Теперь я не закрываю браузер. Я вхожу в google.com в браузере, а затем я закрываю broswer. Может ли ваш код работать? –