dodanie admina przy starcie

0

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

1

Przy starcie aplikacji sprawdzasz czy istnieje już jakiś użytkownik, jak nie, to dodajesz za pomocą tego register user jakiegoś admin:password, ustawiasz, że hasło jest wygasłe i administrator musi je zmienić podczas pierwszego logowania.

1 użytkowników online, w tym zalogowanych: 0, gości: 1