您的位置:首页 > 编程语言 > Java开发

Spring Security 3.0控制一个帐号只允许登录一次的问题

2011-01-24 15:08 246 查看
Spring Security 3 自定义UserDetails后,控制一个帐号只能登录一次的功能不能起作用,原因出在自定义的UserDetails上:

org.springframework.security.web.authentication.session.ConcurrentSessionControlStrategy 里面的checkAuthenticationAllowed方法,调用了sessionRegistry.getAllSessions,用authentication.getPrincipal(),也就是UserDetails实现对象。 但是sessionRegistry存储的时候使用的是Hash的数据结构,在自定义的UserDetails里必须重写equals和hashCode

见flashing的论坛主题:

http://www.javaeye.com/topic/823666
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐