PasswordEncoder 密码解析器详解

  • 1.接口介绍
  • 2.内置解析器介绍
  • 3.BCryptPasswordEncoder 简介
  • 4.代码演示
  • Spring Security 要求容器中必须有 PasswordEncoder 实例。所以当自定义登录逻辑时要求必须给容器注入 PaswordEncoder 的 bean 对象

1.接口介绍

  • encode():把参数按照特定的解析规则进行解析
  • matches()验证从存储中获取的编码密码与编码后提交的原始密码是否匹配。如果密码匹配,则返回 true;如果不匹配,则返回 false。第一个参数表示需要被解析的密码。第二个参数表示存储的密码。
  • upgradeEncoding():如果解析的密码能够再次进行解析且达到更安全的结果则返回 true,否则返回 false。默认返回 false。

2.内置解析器介绍

  • 在 Spring Security 中内置了很多解析器。

3.BCryptPasswordEncoder 简介

  • BCryptPasswordEncoder 是 Spring Security 官方推荐的密码解析器,平时多使用这个解析器
  • BCryptPasswordEncoder 是对 bcrypt 强散列方法的具体实现。是基于 Hash 算法实现的单向加密。可以通过 strength 控制加密强度,默认 10.

4.代码演示

  • 在项目 src/test/java 下新建 com.dqcgm.MyTest 测试BCryptPasswordEncoder 用法。
@SpringBootTest
@RunWith(SpringRunner.class)
public class MyTest {@Testpublic void test(){//创建解析器PasswordEncoder encoder = new BCryptPasswordEncoder();//对密码进行加密String password = encoder.encode("123");System.out.println("------------"+password);//判断原字符加密后和内容是否匹配boolean result = encoder.matches("123",password);System.out.println("============="+result);}
}

Java Spring Security 安全框架:(四)PasswordEncoder 密码解析器详解相关推荐

  1. java中的json_JAVA中的四种JSON解析方式详解

    JAVA中的四种JSON解析方式详解 我们在日常开发中少不了和JSON数据打交道,那么我们来看看JAVA中常用的JSON解析方式. 1.JSON官方 脱离框架使用 2.GSON 3.FastJSON ...

  2. Spring Security 安全框架

    Spring Security 一. Spring Security 简介 1 概括 Spring Security 是一个高度自定义的安全框架.利用 Spring IoC/DI和 AOP 功能,为系 ...

  3. java按钮权限控制_详解Spring Security 中的四种权限控制方式

    Spring Security 中对于权限控制默认已经提供了很多了,但是,一个优秀的框架必须具备良好的扩展性,恰好,Spring Security 的扩展性就非常棒,我们既可以使用 Spring Se ...

  4. Spring Security到底在哪里进行密码方式认证

    一 Spring Security比较好的教程 http://www.spring4all.com/article/428 二 基于数据库的密码认证 http://www.spring4all.com ...

  5. 基于 Java Spring Security 的关注微信公众号即登录的设计与实现 ya

    太长不看版本 本文通过一个实际的具有一定商业价值的项目,展示了 API 优先的开发方法.通过薅羊毛的方式,落地了 Free Arch 架构. 背景和价值 通过微信公众号积累粉丝并进行商业活动宣传,是新 ...

  6. springsecurity sessionregistry session共享_要学就学透彻!Spring Security 中 CSRF 防御源码解析...

    今日干货 刚刚发表查看:66666回复:666 公众号后台回复 ssm,免费获取松哥纯手敲的 SSM 框架学习干货. 上篇文章松哥和大家聊了什么是 CSRF 攻击,以及 CSRF 攻击要如何防御.主要 ...

  7. 要学就学透彻!Spring Security 中 CSRF 防御源码解析

    上篇文章松哥和大家聊了什么是 CSRF 攻击,以及 CSRF 攻击要如何防御.主要和大家聊了 Spring Security 中处理该问题的几种办法. 今天松哥来和大家简单的看一下 Spring Se ...

  8. spring security http.rememberMe()使用和原理解析

    spring security http.rememberMe()使用和原理解析 文章目录 spring security http.rememberMe()使用和原理解析 转载请贴上本文链接 htt ...

  9. java中属性文件读取案例_java相关:Spring中属性文件properties的读取与使用详解

    java相关:Spring中属性文件properties的读取与使用详解 发布于 2020-6-3| 复制链接 摘记: Spring中属性文件properties的读取与使用详解实际项目中,通常将一些 ...

  10. java中北大学ppt总结+课后习题第四章(小宇特详解)

    java中北大学ppt总结+课后习题第四章(小宇特详解) 继承 子类与父类 继承是根据现有类创建新的类的机制,由继承而得到的新类称为子类(subclass)或派生类(derived class),被继 ...

最新文章

  1. 艰难就业季,2020 AI算法岗春招汇总 面经大全来了!!!
  2. Visual Studio 2013编译Mozilla NPAPI 示例注意事项
  3. Glide 的基本使用
  4. python爬虫实例-python使用百度进行爬虫简单学习例子
  5. 图像工程 CH6图像校正和修补
  6. php中提示Undefined index的解决方法
  7. 逗号后面统一加空格_十分钟搞定字幕,教你做加字幕的“快手菜”
  8. 研磨设计模式学习笔记3--适配器模式Adapter
  9. tinymce 编辑器 上传图片
  10. iis6.0 php fastcgi,IIS 6.0 - FastCGI
  11. 中文字体的英文名称(宋体 微软雅黑)
  12. Unity使用MD5加密
  13. win10家庭版升级为专业版
  14. 女程序员年薪45万外加两套房,一日相亲两次,网友:找得到才怪
  15. 101名女职工血清总胆固醇测量结果spss描述统计分析
  16. Selenium+Java - 结合sikuliX操作Flash网页
  17. 2022/11/6周报
  18. 优秀的NAS不光只有群晖,看看威联通在安全性上如何K掉群晖
  19. win11桌面改成win7桌面的设置方法
  20. 【基础知识-高数-1】——雅可比行列式与“可逆性”证明一则

热门文章

  1. BAT投资AI已超硅谷巨头,北京成风投增长第一城
  2. ESP8266物联网开发入门教程
  3. Android拨号盘,支持T9搜索和号码搜索
  4. 2021考研数学二汤家凤接力题典1800【解答册】
  5. WBS 工作分解结构
  6. [笔记]WBS方法论
  7. C语言 IDE的介绍及安装
  8. 使用tftp服务把路由器的配置上传到服务器
  9. 自然语言处理之 snownlp,分词、词性标注、情感分析、文本分类、提取关键词、文本相似度
  10. 关于si4438以往犯的一些错误