Class SecurityConfig

java.lang.Object
com.raphaelsalles.backend.infra.security.SecurityConfig

@Configuration @EnableWebSecurity public class SecurityConfig extends Object
Configuração de Segurança do Spring Security.

Propósito: Definir as regras de autenticação e autorização da aplicação. Configura o filtro JWT, desabilita CSRF (API Stateless) e define permissões de endpoints.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final SecurityFilter
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.springframework.security.authentication.AuthenticationManager
    authenticationManager(org.springframework.security.config.annotation.authentication.configuration.AuthenticationConfiguration config)
    Expõe o AuthenticationManager como Bean.
    org.springframework.security.web.SecurityFilterChain
    securityFilterChain(org.springframework.security.config.annotation.web.builders.HttpSecurity http)
    Configura a cadeia de filtros de segurança.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • SecurityConfig

      public SecurityConfig(SecurityFilter securityFilter)
  • Method Details

    • securityFilterChain

      @Bean public org.springframework.security.web.SecurityFilterChain securityFilterChain(org.springframework.security.config.annotation.web.builders.HttpSecurity http) throws Exception
      Configura a cadeia de filtros de segurança.

      Regras:

      • Endpoints públicos: /api/auth/**, /api/dev/**, Swagger.
      • Endpoints protegidos: Todos os demais exigem autenticação.
      • Endpoints administrativos: /api/painel-gestao/** exigem role ADMIN.

      Parameters:
      http - O objeto HttpSecurity.
      Returns:
      A cadeia de filtros configurada.
      Throws:
      Exception
    • authenticationManager

      @Bean public org.springframework.security.authentication.AuthenticationManager authenticationManager(org.springframework.security.config.annotation.authentication.configuration.AuthenticationConfiguration config) throws Exception
      Expõe o AuthenticationManager como Bean.
      Parameters:
      config - A configuração de autenticação.
      Returns:
      O AuthenticationManager.
      Throws:
      Exception