Как сохранить аутентифицированного пользователя в JASPIC?

Я разработал модуль аутентификации безопасности (SAM) и реализовалvalidateRequest метод. У меня также есть простой веб-приложение, настроенное для использования этого SAM.

В моемvalidateRequest метод, я проверяю clientSubject и устанавливаюCallerPrincipalCallback с жестко заданным именем пользователя иGroupPrincipalCallback с жестко заданным названием группы:

final CallerPrincipalCallback callerPrincipalCallback = new CallerPrincipalCallback(clientSubject, "anonymous");
final GroupPrincipalCallback groupPrincipalCallback = new GroupPrincipalCallback(clientSubject, new String[] {"user"});

try {
  this.handler.handle(new Callback[] {callerPrincipalCallback, groupPrincipalCallback});
} catch (IOException | UnsupportedCallbackException e) {
  logger.error(e.getMessage());
}

Я заметил, что каждый раз, когда я обновляю сервлет в моем веб-приложении, тема клиента просто пуста,logger.debug("Client: {}", clientSubject);:

2015-05-05 11:21:02,200 DEBUG n.m.j.s.Saml2AuthModule [http-listener-1(2)] Client: Subject:

Можно ли как-то «сохранить» тему, чтобы тема была присоединена к сеансу, и я могу просто пропустить вход в систему одного и того же пользователя каждый раз?

РЕДАКТИРОВАТЬ Я думаю, что нашел способ вручную сохранить его вHttpSession: req.getSession().setAttribute("subject", user); Не красиво, но это работает.

Ответы на вопрос(1)

Ваш ответ на вопрос