Olá, Rodrigo. Pode me ajudar? Estou usando o banco de dados H2 e desde que adicionei o Spring Security não consigo mais acessar o banco de dados.
Pode por favor me ajudar com as adaptações necessárias?
Obrigada.
Olá, Rodrigo. Pode me ajudar? Estou usando o banco de dados H2 e desde que adicionei o Spring Security não consigo mais acessar o banco de dados.
Pode por favor me ajudar com as adaptações necessárias?
Obrigada.
Oi Vanessa!
Você precisa liberar o h2-console para o Spring Security:
.requestMatchers("/h2-console/**").permitAll()
.and().headers().frameOptions().sameOrigin()
No momento meu método está assim:
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
return http.csrf().disable()
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and().build();
}
Onde entra essas linhas de código? Tentei de algumas formas aqui, mas não compila.
O seu pode ficar assim então:
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
return http.csrf().disable()
.authorizeHttpRequests()
.requestMatchers("/h2-console/**").permitAll()
.and().headers().frameOptions().sameOrigin()
.and().sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and().build();
}
Eu tentei assim, mas não compila a linha:
.requestMatchers("/h2-console/**").permitAll()
Se você estiver usando a versão 3.0.0(M5) do Spring Boot (ou anterior) altere para:
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
return http.csrf().disable()
.authorizeRequests()
.antMatchers("/h2-console/**").permitAll()
.and().headers().frameOptions().sameOrigin()
.and().sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and().build();
}
Exato, foi isso que funcionou. Obrigada!