spring-security 一个用户只能登陆一次

本文详细介绍了如何通过在web.xml中加入监听器和在security配置文件中设置参数,实现Spring Security中一个用户只能登录一次的功能。包括两步操作:第一步是在web.xml中加入 HttpSessionEventPublisher 监听器;第二步是在security配置中设置最大会话数为1,并配置session-authentication-error-url以在用户尝试二次登录时跳转到错误页面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 首先假设你的security能正常的运行了,一般的配置都没问题的情况下,实现一个用户只能登陆一次,大概只需要两步。

第一步 在你的web.xml中加入监听器

    <listener> 
<listener-class> org.springframework.security.web.session.HttpSessionEventPublisher </listener-class>
</listener>

第二步 在security的配置文件中加入以下配置信息

    <http auto-config='true' >

<intercept-url pattern="/**" access="ROLE_USER" />
<remember-me key="myAppKey"/>
<logout invalidate-session="true"/>
<openid-login />
<session-management>
<concurrency-control max-sessions="1" error-if-maximum-exceeded="true" />
</session-management>


</http>

如果你想在那个用户第二次登陆时跳转到一个错误页面时,使用 session-authentication-error-url属性。

嘿 so easy吧

posted on 2011-07-21 08:52  包子先森 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/b-gao/archive/2011/07/21/2112336.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值