Как получить доступ к дополнительным полям со страницы входа в Spring Security? - PullRequest
1 голос
/ 08 марта 2011

На странице входа в Spring Security у меня есть название компании, имя пользователя и пароль.Когда я нажимаю на кнопку входа, он перенаправляет на index.jsp.Я хочу получить доступ к названию компании в index.jsp.Я получаю имя пользователя и пароль, используя

SecurityContextHolder.getContext().getAuthentication().getName(); 

и

SecurityContextHolder.getContext().getAuthentication().getCredentials(); 

Но я не могу получить название компании.Как это сделать?

1 Ответ

2 голосов
/ 08 марта 2011

Допустим, вы вошли в систему и вам нужно получить название компании, которую вы получили из базы данных. Сначала вам нужно будет создать объект, который реализует UserDetails, который будет сохранять в UserDetailsService, и добавить любую переменную, которая вам нужна (компания и т. Д.).

public class CustomUserDetails implements UserDetails{      
    private String password;
    private String username;
    private String companyName;
}

чем в typecast с вашей пользовательской реализацией Userdetails.

CustomUserDetails customDetails (CustomUserDetails)SecurityContextHolder.getContext().getAuthentication().getCredentials();

getCredentials вернет Object того, что вы сохранили в учетные данные. Независимо от типа, вы всегда можете вернуть его в класс, который вы сохранили.

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