405. In Memory Authentication Provider - dkkahm/study-springfamework5 GitHub Wiki

To make two different user accounts (In SecurityConfig)

  • Method1. override userDetailService
    @Override
    @Bean
    protected UserDetailsService userDetailsService() {
        UserDetails admin = User.withDefaultPasswordEncoder()
                .username("spring")
                .password("guru")
                .roles("ADMIN")
                .build();

        UserDetails user = User.withDefaultPasswordEncoder()
                .username("user")
                .password("password")
                .roles("USER")
                .build();

        return new InMemoryUserDetailsManager(admin, user);
    }
  • Method2. override void configure(AuthenticationManagerBuilder auth)
    @Bean
    PasswordEncoder passwordEncoder() {
        return NoOpPasswordEncoder.getInstance();
    }

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.inMemoryAuthentication()
                .withUser("spring")
                    .password("guru") // without PasswordEncoder Bean, use {noop}guru
                    .roles("ADMIN")
                    .and()
                .withUser("user")
                    .password("password")  // without PasswordEncoder Bean, use {noop}password
                    .roles("USER");
    }