• spring Security框架
    web开发 设置安全 主要功能是对访问进行身份认证,访问控制, 菜单权限
    只需要添加相关的启动器就可以实现,

    添加成功后所有请求都会被拦截,必须走框架中自带的一个登陆页面,用户名是user 密码是控制台中有 只要通过了框架认证才可以进入访问资源
    那么如何知道spring recurity框架的认证逻辑是怎么处理的呢? 就需要学习他的一个UserDetailsService 中文是用户详细信息这个对象信息
    这是个接口,通过这个接口来做登录认证处理的
    这个接口中有方法是

    意思就是说通过这个接口中的抽象方法来做登录认证逻辑的,
    这个方法返回的UserDetails也是一个接口,这个接口中的方法有
    getAuthorities() 获取对应的权限,
    getpassword()获取密码,getUsername()获取用户名,
    isAccountNonExpired()账号是否过期
    isAccountNonLocked();账号是否锁定
    isEnable()账户是否启动
    这个接口的实现类有User类,这个类的构造方法有三个参数 用户名 密码 权限

密码解析器 passwordEncoder是一个接口
有方法encoder( passwrod )客户端传递过来的密码 进行加密
matches(rawpassword,encoder) 这方法就是做比较,前面是传过来的,后面是加密后的,匹配对了就返回true
upgradeEncoding()方法是对加密的密码进行一次加密 二次加密 返回true是成功
它的实现类BCryptPasswordEncoder,密码解析器

  • 自定义登录逻辑
    需要使用UserDetailsService对象,这个对象就是定义逻辑的,PasswordEncoder密码解析器
    但是在自定义之前PasswordEncoder必须有这个实例,
    来开始演示, 首先在一个配置类中实例化出一个PasswordEncoder对象

    开始编写用户登录认证逻辑过程 需要用UserDetailsService对象

    第三个重要对象就是配置WebSecurityConfigurerAdapte对象来进行权限控制,一些小设置

    以上就是比较重要的三个点,
    下面就是在配置类中常见的设置

    anyRequest()表示匹配到所有请求,antMatcher()指定参数匹配

    对于匹配到到的url可以进行控制
    permitAll() 放行
    authenticated()认证
    denyAll()拒绝访问
    rememberMe()被记得我的用户允许访问
    fullyAuthenticated() 不是记得我才可以访问
  • Spring Security 中 Remember Me 为“记住我”功能,用户只需要在登录时添加 remember-me 复选框,取值为 true。Spring Security 会自动把用户信息存储到数据源中,以后就可以不登录进行访问。



    添加选择框

    退出登录

SpringSecurity安全框架的笔记相关推荐

  1. Spring Boot 框架学习笔记(五)( SpringSecurity安全框架 )

    Spring Boot 框架学习笔记(五) SpringSecurity安全框架 概述 作用 开发示例: 1. 新建项目 2. 引入依赖 3. 编写`SecurityConfig`类,实现认证,授权, ...

  2. SSH框架搭建 笔记 (含spring注解驱动)

    分类: web 开发2014-04-27 12:33 354人阅读 评论(0) 收藏 举报 框架springinterface注解 好久没有搭建框架了,今天整理下以前的知识,整合下SSH,没想到手生了 ...

  3. .net框架读书笔记---引用参数(ref/out)

    接上一篇.net框架读书笔记---方法(类型造器) 默认情况下,CLR假设所有的方法参数都是按值传递参数的.当参数为引用类型的对象时,参数的传递是通过传递对象的引用(或)指针来完成的.这意味着方法可以 ...

  4. SpringMVC框架--学习笔记(下)

    接上篇:SpirngMVC框架--学习笔记(上):https://blog.csdn.net/a745233700/article/details/81038382 17.全局异常处理: 系统中异常包 ...

  5. SpringMVC框架--学习笔记(上)

    1.SpringMVC入门程序: (1)导入jar包:spring核心jar包.spring-webmvc整合Jar包 (2)配置前端控制器:web.xml文件中 <?xml version=& ...

  6. mybatis框架--学习笔记(下)

    上篇:mybatis框架--学习笔记(上):https://blog.csdn.net/a745233700/article/details/81034021 8.高级映射: (1)一对一查询: ①使 ...

  7. mybatis框架--学习笔记(上)

    使用JDBC操作数据库的问题总结: (1)数据库连接,使用时创建,不使用时立即释放,对数据库进行频繁连接开启和关闭,造成数据库资源浪费,影响数据库性能. 设想:使用数据库连接池管理数据库连接. (2) ...

  8. .net框架读书笔记---通用对象操作(一)

    接上一篇.net框架读书笔记---基础类型,这节主要学习这样正确实现所有对象都必须提供的一组通用操作---对象的等值性和唯一性: System.Object类型提供了一个名为Equals的虚方法,其目 ...

  9. .net框架读书笔记---类型成员及其访问限定(一)

    接上一篇.net框架读书笔记---通用对象操作(三),开始学习类型以及每个类型的所有实例都具有的一组通用操作. 一.类型成员 一个类型可以定义零个或多个以下成员 常数,常数是一个表示恒定不变的数值的符 ...

  10. .net框架读书笔记---基础类型

    接上一篇.net框架读书笔记---值类型的装箱与拆箱, 一.Object CLR要求每个类型都最终集成自System.Object类型,这意味着以下两种定义是相同的: //隐式继承自Object cl ...

最新文章

  1. ubuntu 定时执行php文件,Ubuntu crontab 定时执行php脚本文件
  2. SqlDataAdapter的使用注意事项
  3. .net npoi xssfclientanchor设置图片缩放大小_.NET导出Excel的四种方法及评测
  4. scrapy爬虫系列之三--爬取图片保存到本地
  5. java 股票 代码_Java中利用散列表实现股票行情的查询_java
  6. 太难了!国内手机出货量大幅下降:华为跌幅小,小米跌惨了
  7. loadrunner 及 QTP 下载地址
  8. 电脑和微信怎么发邮件到别人邮箱,企业邮箱如何发email给别人
  9. 身份证复印件的正确写法
  10. APP设计之启动页和广告页
  11. 我的收藏:第二章:程序员收入渠道
  12. IIS站点配置和DW CS6连接Access数据库
  13. 利用Docker创建镜像运行jar包
  14. mysql时间读不了了_Mysql之复习
  15. echarts3实现柱状图和饼图详解
  16. 办公软件excel表格_推荐这个免费的Excel共享编辑办公软件,操作很灵活、功能很全...
  17. java中大数值_Java大数值转换
  18. 关于想使用kali中的foremost遇到的问题
  19. 简述你对计算机科学导论的看法,《计算机科学导论》(节选)翻译报告
  20. 沁云图浅谈之互联网赚钱的方法

热门文章

  1. 利用H5和ChromiumWebBrowser构建应用
  2. Windows Server 2012 GUI与Core的切换
  3. (转) 三袋米的故事
  4. html图片向右上方飘忽,关于javascript中this 飘忽不定的指向的问题
  5. python小程序代码_Python解题记录第19题
  6. 拓端tecdat|维度规约(降维)算法在WEKA中应用
  7. 常见排序算法的python实现
  8. Java从入门到精通 第19章 异常的捕获和处理
  9. 数据结构 第二章 线性表
  10. 【目标检测】Labelme的改进——海量图片的自动标注