Доступ к HTTP-сеансу из процесса входа в Spring Security - PullRequest
0 голосов
/ 23 февраля 2010

Могу ли я получить доступ к объекту HTTP Session из метода retrieveUser моего класса, который расширяет org.springframework.security.providers.dao.AbstractUserDetailsAuthenticationProvider

Если так, то как? Вот подпись метода для retrieveUser:

public UserDetails retrieveUser(String username, UsernamePasswordAuthenticationToken authentication);

Я пытаюсь разместить некоторую информацию о пользователе в сеансе после входа пользователя в систему .....

Ответы [ 2 ]

1 голос
/ 24 февраля 2010

Как насчет использования bean-объекта в области сеанса для всего, что вам нужно хранить, и ApplicationListener, который его заполняет? Вы можете определить слушателя как (при условии, что вы используете конфигурацию Java):

@Bean
public ApplicationListener<AbstractAuthenticationEvent> authenticationListener() {
    return new MyAuthenticationListener();
}
0 голосов
/ 24 февраля 2010

Ну, мое решение было добавить данные в объект UserDetails, возвращаемый объектом retrieveUser. Затем я мог бы использовать Spring Security для извлечения данных из любой точки приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...