1
resposta

[Dúvida] Ajuda com configuração de segurança no Spring Boot

Ola pessoal

Estou precisando de uma ajuda com um problema que estou enfrentando no meu projeto Spring Boot. Já configurei a segurança usando SecurityFilterChain, desabilitei o CSRF e permiti acessos públicos à rota /usuarios. No entanto, estou enfrentando um comportamento estranho:

A requisição PUT para /usuarios está funcionando corretamente (retorna 200 OK). A requisição POST para a mesma rota está retornando 403 Forbidden.

Alguém já passou por isso ou sabe o que pode estar causando o problema no método POST? Qualquer dica seria super bem-vinda!

Aqui está o repositório do projeto: https://github.com/EversonRubira/gestao-saude-mental

Desde já, agradeço!

1 resposta

Oi!

A princípio tudo ok com seu código.

Talvez esteja entrando no if do controller, que valida a idade, e lançando exception. Coloca um try/catch no método apra verificar se ocorre alguma exception no console do IntelliJ:

@PostMapping
@Transactional
public ResponseEntity<String> cadastrar(@RequestBody @Valid DadosCadastroUsuario dados) {
    try {
        if (dados.dataNascimento().isAfter(LocalDate.now().minusYears(18))){
            throw new IllegalArgumentException("O usuário deve ter pelo menos 18 anos.");
        }
        repository.save(new Usuario(dados));
        return ResponseEntity.status(HttpStatus.CREATED).body("Usuário cadastrado com sucesso!");
    } catch (Exception e) {
        e.printStackTrace();
        return ResponseEntity.badRequest().body("erro!");
    }
}