Получение учетных данных в приложении SpringBoot 2.1.4.RELEASE - PullRequest
0 голосов
/ 18 апреля 2019

У меня есть приложение SpringBoot 2.1.4.RELEASE.с этими методами в файле конфигурации безопасности:

  @Override
    protected void configure(HttpSecurity http) throws Exception {

        http
                .authorizeRequests()
                .antMatchers(publicMatchers()).permitAll()
                .anyRequest().authenticated()
                .and()
                .formLogin().loginPage("/login").defaultSuccessUrl("/calzadas/list")
                .failureUrl("/login?error").permitAll()
                .and()
                .logout().permitAll();
    }

    @Autowired
    public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
        auth
                .eraseCredentials(false)
                .userDetailsService(userSecurityService)
                .passwordEncoder(passwordEncoder());
    }

и вот мой LoginController

@Controller
public class LoginController extends ICryptsController {

    private static final Logger LOG = LoggerFactory.getLogger(LoginController.class);

    /** The login view name */
    public static final String LOGIN_VIEW_NAME = "login/login";

    @RequestMapping(value={ "/", "/login"}, method = {RequestMethod.GET})
    public String login() {     
        return serverContextPath + "/" + LOGIN_VIEW_NAME;
    }
}

, но сейчас я не знаю, откуда извлечь учетные данные пользователя в виде простого текста (пользователь / pwd)

1 Ответ

0 голосов
/ 18 апреля 2019

Вы можете получить учетные данные из аргументов метода в вашем классе контроллера.Например.Поскольку вы дали URL-адрес успеха, вы можете сделать это.

@Controller
public class LoginController extends ICryptsController {
   ...
   @RequestMapping(value={ "/calzadas/list"}, method = {RequestMethod.GET})
      public void list(Authentication auth) {     
         Object credentials = auth.getCredentials();
   }

Это всего лишь один способ, в Интернете есть много примеров.

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