Como saber ter acesso as informações do usuário no Spring Security

Eu gostaria de saber como eu faço pra ter acesso as informações do usuário que está logado na sessão do spring. Estou utilizando o primefaces e quando eu vou realizar uma ação no bean como usuario.acesso == “Admin” . Ela não realiza a comparação pois a variável está nula. O spring security bloqueia essas informações ? tem alguma maneira certa de pegar elas ?

Tente da seguinte forma:

	protected Usuario getUsuario() {
	Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
	return (Usuario) authentication.getDetails();
}

Esse metodo me retorna apenas essas informações

org.springframework.security.web.authentication.WebAuthenticationDetails@380f4: RemoteIpAddress: 0:0:0:0:0:0:0:1; SessionId: e54ba025378923214898fb4b41ef

porem queria informações como o nivel de acesso dele como :
ROLE_ADMIN ou ROLE_COMMON entende ?
obs: essas informações estão contidas na coluna acesso do Usuario.

Se você configurou o usuário no Spring Security da seguinte forma, deveria funcionar.

		UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(usuario.getLogin(), usuario.getSenha(), usuario.getListaPerfil());
	token.setDetails(usuario);
    SecurityContextHolder.createEmptyContext();
    SecurityContextHolder.getContext().setAuthentication(token);

e sua classe Usuario deve implementar UserDetails do Spring

O pior que não tive muito tempo pro projeto e acabei configurando ele bem simples apenas no xml do spring security mesmo. Então é quase impossível conseguir essas informações ne ?

O que você vai precisar é de:

public class Usuario implements UserDetails {
       getUsername(): String
       getPassword(): String
       getAuthorities(): List<Perfil>

}

public class Perfil implements GrantedAuthority {

}

Após realizar o login com sucesso, você salva o Usuario no contexto do Spring Security