Witam,
mam skonfigurowany HttpSecurity:
@Override
protected void configure(HttpSecurity http) throws Exception {
http.headers().frameOptions().disable();
http.csrf().disable().authorizeRequests()
.antMatchers("/addedProducts")
.hasAnyAuthority("ADMIN", "USER")
// .antMatchers("/registration")
// .hasAnyAuthority("ADMIN")
.antMatchers("/h2-console/**")
.permitAll().and()
.formLogin().loginPage("/login").defaultSuccessUrl("/").permitAll();
}
i chciałbym dodać przy starcie programu do h2db użytkownika z rolą ADMIN aby móc rejestrować nowych użytkowników,
dodawanie użytkowników mam w sposób:
@Transactional
public void registerUser(UserDTO userDTO) throws Exception {
if(userExist(userDTO.getEmail())){
throw new Exception("Użytkownik już istnieje z takim adresem emial: "
+ userDTO.getEmail());
}
userDTO.setRoles(Collections.singleton("USER"));
userDTO.setPassword(passwordEncoder.encode(userDTO.getPassword()));
userRepository.save(userDTO);
}
hasło dodawane mam za pomocą BCryptPasswordEncoder, jednak gdy w consoli h2 podaje za pomocą insert hasło np. admin to w aplikacji nie mogę się za pomocą tego zalogować bo nie jest kodowane. Jak mogę przy starcie programu dodać użytkownika z kodowanym hasłem?
P.S.
nie wiem czy zrozumiale napisałem