JSON логин с весны-лимона
Я использую spring-lemon для своего проекта веб-приложения. Spring-lemon по умолчанию использует стандартную форму входа в систему, которая отлично работает. Теперь, однако, мне нужно использовать аутентификацию с запросом json, примерно так:
{"username":"spring.user", "password":"s3cret"}
Как мне добиться этого безопасно? Я искал это, и я видел различные решения, но я не мог использовать их с успехом.
1 ответ
Spring Lemon не поставляется с этой функцией. Тем не менее, я думаю, что вы можете кодировать конечную точку, где вы можете вручную получить пользователя, сопоставить пароль, украсить его и затем установить аутентификацию, как показано ниже:
SecurityContextHolder.getContext().setAuthentication(
new UsernamePasswordAuthenticationToken(user,
user.getPassword(), user.getAuthorities()));
LemonTokenAuthenticationFilter делает похожую вещь - вы можете взглянуть на это.