我正在开发一个jsf应用程序,我想用Spring-Secrity来验证我的用户,我正在使用hibernate,需要的是: - 使用Spring-Security验证用户身份。 - 在会话bean中保存用户身份验证。 - 我需要一个注销方法。 - 我需要确切地知道要添加到我的项目中的罐子。 - 在我的数据库中,每个用户都有一个角色,(用户或管理员)。
我发现的教程的问题是,在验证之后没有关于当前用户的信息,而我的情况是,我需要真正的会话bean中的当前用户。
我该怎么做?
答案 0 :(得分:0)
我会看Spring Web Flow primefaces example。它演示了与JSF的集成,提供了与Spring Security集成的JSF标记库等。在能够从会话bean访问当前用户方面,您可以使用SecurityContextHolder从任何位置获取当前用户您的应用程序(包括会话bean)。例如:
Authentication authentication = SecurityContextHolder.getContext()
.getAuthentication();
UserDetails userDetails = (UserDetails) authentication.getPrincipal();