SpringSecurity(十一): 权限表达式
摘要:1、Spring Security 允许我们使用 Spring EL 表达式,来进行用户权限的控制,如果对应的表达式结果返回true,则表示拥有对应的权限,反之则无。 Spring Security 可用表达式对象的基类是SecurityExpressionRoot 表达式 描述 permitAll
阅读全文
posted @
2021-01-25 22:31
西门夜说
阅读(822)
推荐(0)
SpringSecurity(十): 只允许一个用户登录
摘要:只允许一个用户在一个地方登录,也是每个用户在系统中只能有一个Session。如果同一用户在第2个地方登录,则将第1个踢下线。 1.自定义 CustomSessionInformationExpiredStrategy 实现类来定制策略 /** * 同一用户只允许一台电脑登录 * 同一用户在第2个地方
阅读全文
posted @
2021-01-24 02:19
西门夜说
阅读(3370)
推荐(0)
SpringSecurity(九): 自定义Session 会话超时处理逻辑
摘要:默认情况下,当 session(默认30分钟) 失效后会请求回认证页面。我们可以自定义 session 失效后,响应不同的结果。 自定义CustomInvalidSessionStrategy类实现InvalidSessionStrategy /** * 当session失效后的处理逻辑 */ @C
阅读全文
posted @
2021-01-24 01:11
西门夜说
阅读(2267)
推荐(0)
SpringSecurity(八): 手机短信验证码认证功能和手机登录RememberMe记住我功能
摘要:1、手机号登录是不需要密码的,通过短信验证码实现免密登录功能。 a.向手机发送手机验证码,使用第三方短信平台 SDK 发送,如: 阿里云短信服务 b.登录表单输入短信验证码 c.使用自定义短信验证码校验过滤器SmsVerifyCodeValidateFilter d.当验证码校验通过后,进入自定义手
阅读全文
posted @
2021-01-23 23:41
西门夜说
阅读(1793)
推荐(0)
SpringSecurity(七): Remember-Me 记住我功能
摘要:Remember-Me 记住我功能效果: 登录后会记住用户令牌,不用反复登录 。 1. 用户选择了“记住我”成功登录后,将会把username、随机生成的序列号、生成的token存入一个数据库表中,同时将它们的组合生成一个cookie发送给客户端浏览器。 2. 当没有登录的用户访问系统时,首先检查
阅读全文
posted @
2021-01-07 01:47
西门夜说
阅读(653)
推荐(0)
SpringSecurity(六): 实现图形验证码认证
摘要:1.SpringSecurity并没有给我们提供图形验证码,因为spring security他的基本原理就是一个过滤器链。对于springSceurity而言,验证码的执行校验顺序肯定是在UsernamePasswordAuthenticationFilter之前的,因为如果验证码都不对,那么 根
阅读全文
posted @
2021-01-06 01:33
西门夜说
阅读(525)
推荐(0)
SpringSecurity(五): 自定义认证成功和失败处理器响应给前端json数据
摘要:1.自定义响应结构 /** * 自定义响应结构 */ @Data public class Result { // 响应业务状态 private Integer code; // 响应消息 private String message; // 响应中的数据 private Object data;
阅读全文
posted @
2021-01-05 00:35
西门夜说
阅读(1233)
推荐(0)
SpringSecurity(四): 动态认证用户信息UserDetailsService
摘要:SpringSecurity(一、二、三)身份认证的用户名和密码是启动服务器自动生成的,或者是代码中写死的,存储在内存中。而实际项目中应该从动态的从数据库中获取进行身份认证。 1.实现流程: (1)关注 UserDetailsService 、 UserDetails 接口 (2)自定义一个 Use
阅读全文
posted @
2021-01-05 00:03
西门夜说
阅读(2699)
推荐(1)