1
resposta

Origem do sec:authentication="principal

Durante a aula usamos sec:authentication="principal.nome"> qual seria a origem desse principal, seria um contexto do proprio security,seria do thymeleaf?

1 resposta

O principal dentro de sec:authentication="principal.nome" vem do Spring Security. Ele representa o usuário autenticado na aplicação e está disponível no contexto de segurança gerenciado pelo framework.

O Thymeleaf fornece a extensão sec: (Spring Security Dialect) para facilitar o acesso a informações de autenticação, mas o dado em si vem do Spring Security.

Se precisar acessar essa informação diretamente no código Java, pode usar:

Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
Object principal = authentication.getPrincipal();

Caso o usuário tenha um objeto específico, como um UserDetails, você pode convertê-lo e acessar os atributos personalizados.