Durante a aula usamos sec:authentication="principal.nome"> qual seria a origem desse principal, seria um contexto do proprio security,seria do thymeleaf?
Durante a aula usamos sec:authentication="principal.nome"> qual seria a origem desse principal, seria um contexto do proprio security,seria do thymeleaf?
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.