当前位置: 首页 > news >正文

Spring Boot Security 实现后台权限管理系统(三)

实现验证码功能

前面我们实现了登陆页面改造并实现登陆,但我们忽略了验证码那个地方。

从上图中我们可以看到,我们的图形验证码是一张静态图片且尚未实现验证码功能。开干!

修改application配置文件

spring:security:#   登陆路径login-url: /login#    登出路径logout-url: /logout#    免认证静态资源路径anon-resources-url: /css/**,/js/**,/skin/**,/images/**,/font/**,/fonts/**,/dist/**#    放行路径release-url: /login,/getVerificationCode# 记住我超时时间remember-me-timeout: 300#验证码相关配置code:#图形验证码相关配置image:#        图形验证码图片长度(px)width:  130#        图形验证码图片高度(px)hight:  40#          图形验证码由(n)组成字符位数length: 4#          图形验证码失效时间(秒)expiration-in: 60#          以下资源需要验证图形验证码url: /user,/user/*#        对应登录页面 form表单的 action属性login-processing-url: /authentication/form

从上面代码中可以看到,我在release-url加入了/getVerificationCode该路径,目的是为了放行生成验证码功能接口。并且将login-processing-url放到了验证码下面。

验证码属性

/*** @Package: com.zlx.bpms.validate.properties* @Author: LQW* @Date: 2020/3/24* @Description:验证码属性*/
@Data
public class ValidateCodeProperties {/*** 图形验证码属性*/ImageCodeProperties image = new ImageCodeProperties();
}

图形验证码属性

/*** @Package: com.zlx.bpms.validate.properties.image* @Author: LQW* @Date: 2020/3/24* @Description:图形验证码属性*/
@EqualsAndHashCode(callSuper = true)
@Data
public class ImageCodeProperties extends CommonProperties {/**** 图形验证码图片长度*/private int width;/*** 图形验证码图片高度*/private int hight;/*** 处理登陆认证URL(页面的action属性值)*/private String loginProcessingUrl;public ImageCodeProperties() {setLength(BpmsConstant.TheNumberDevil.FOUR);}
}

修改BpmsSecurityProperties配置属性

/*** @Package: com.zlx.bpms.properties* @Author: LQW* @Date: 2020/3/17* @Description:权限认证属性*/
@ConfigurationProperties(prefix = "spring.security")
@Data
public class BpmsSecurityProperties {/*** 登录路径*/private String loginUrl;/*** 登出路径*/private String logoutUrl;/*** 免认证静态资源路径*/private String anonResourcesUrl;/*** 放行路径*/private String releaseUrl;/*** 记住我超时时间*/private int rememberMeTimeout;/*** 验证码配置*/private ValidateCodeProperties code;
}

生成验证码


http://www.zskr.cn/news/49189.html

相关文章:

  • ubuntu开机强制挂载windows分区
  • TOMCAT Docker 容器化部署指南
  • RustFS 重要变更,让容器化部署更安全
  • 2025年口碑好的风冷一体化加热器厂家实力及用户口碑排行榜
  • vscode python2代码debug
  • 2025年知名的远红外节能加热圈厂家推荐及采购指南
  • 2025 年 11 月干燥机厂家推荐排行榜,离心喷雾干燥机,压力喷雾干燥机,气流干燥机,振动流化床干燥机,旋转闪蒸干燥机,回转滚筒干燥机公司推荐
  • 无法获得锁 /var/lib/dpkg/lock-frontend
  • 2025年成都殡仪一条龙公司权威推荐榜单:殡仪/殡仪一条龙/陵园墓地源头公司精选
  • 2025年AI营销服务怎么选
  • 2025年膜结构景观订做厂家口碑推荐
  • 2025年糖果上浆机厂商口碑推荐榜单
  • 2025年汽车棚订做厂家口碑排行榜单
  • linux命令ll显示结果的含义
  • 2025年高精度珩磨机订做厂家推荐榜单
  • Unicode “包含” GB18030吗?
  • 2025年口碑好的呼吸三型瓶四型瓶厂家推荐及采购指南
  • 比杨云激活出现faild to open the file xxxx edge:Text file busy
  • 2025年烤肉桌椅厂家权威推荐榜单:电动桌椅/火锅桌椅/快餐桌椅源头厂家精选
  • 2025年靠谱的低温绝热三型瓶四型瓶厂家最新TOP排行榜
  • 2025年口碑好的新疆储油罐清洗检测高评价厂家推荐榜
  • [H3C]ACL在远程命令行的作用与配置
  • 2025年电缆锡渣还原粉加工厂排行榜单
  • Rider 2025.2.4, 11月最新版 安装、授权、使用说明
  • 深入解析:React Aria自定义Hooks:可复用逻辑封装模式
  • 2025年11月副业平台推荐榜:知小有领衔五强对比评测
  • 从 C 到 C++:动态数组 vector 与双向链表 list 的优势与常用管理
  • 2025年资深的防水仿真茅草公司口碑排行榜单
  • 2025年想象力教育科技有限公司服务商推荐排行榜
  • 2025年海鲜速冻隧道制造厂家推荐排行榜