Мне нужно войти вручную в приложение, защищенное весной. Мой сценарийвесна безопасность предварительно аутентифицированная логин пользователя
- пользователь регистрируется в приложении 1.
- Ссылка на мой яровой приложения будут доступны.
- Когда пользователь нажимает на ссылку, приложение 1 отправляет зашифрованные данные на незащищенный URL-адрес в моем приложении-источнике.
- Теперь мой контроллер получит зашифрованные данные и вызовет веб-службу в приложении 1, зашифрованные данные будут переданы в веб-службе, и я получаю ответ с именем пользователя.
- после получения имени пользователя. Я не хочу повторять аутентификацию. Я просто хочу установить объект-пользователь/объект аутентификации и загрузить панель.
Шаг 1 - 4 работает.
В моем незащищенном контроллере (где я получу зашифрованные данные) У меня есть следующие строки, но это снова вызывает мой диспетчер аутентификации, и я не хочу снова аутентифицироваться в этом сценарии. Я просто хочу, чтобы сеанс был создан, и пользовательский принцип должен быть установлен.
String username = application1.webservice(encoded data);
Authentication authentication = new UsernamePasswordAuthenticationToken(username,password);
SecurityContextHolder.getContext().setAuthentication(authentication);
return "redirect:/app";
Примечание: У меня работает аутентификация LDAP на основе формы (это будет использоваться, если пользователь непосредственно входит в мое приложение) Я использую Spring Security 3.2/Java Config
Привет, Спасибо за ответ. Я добавил настраиваемую аутентификацию и ее решение. – Mukun