当前位置:首页 » 《随便一记》 » 正文

肝到头秃,阿里爆款的顶配版Spring Security笔记

16 人参与  2022年11月15日 17:29  分类 : 《随便一记》  评论

点击全文阅读


蓦然回首自己做开发已经十年了,这十年中我获得了很多,技术能力、培训、出国、大公司的经历,还有很多很好的朋友。但再仔细一想,这十年中我至少浪费了五年时间,这五年可以足够让自己成长为一个优秀的程序员,可惜我错过了,我用这五年时间和很多程序员一样在困惑和迷茫中找不到出路!

路其实一直都在那里,只是我们看不到而已!

以前我一直被公司和技术牵着走,并不是自己在选择技术,而是不自觉地被推到了这个位置上。想想有多少人对于自己将来要从事的职业和技术类型进行过深入思考和比较呢?当我跳出编码后,我开始思考和程序及程序员职业生涯相关的问题,最后发现,影响我们走入今天的困局的竟然是一些我们常常挂在嘴边的话。

Spring Security

Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。由于它是Spring生态系统中的一员,因此它伴随着整个Spring生态系统不断修正、升级,在spring boot项目中加入springsecurity更是十分简单,使用Spring Security 减少了为企业系统安全控制编写大量重复代码的工作。

Spring Security OAuth2.0认证授权

进入移动互联网时代,大家每天都在刷手机,常用的软件有微信、支付宝、头条等,下边拿微信来举例子说明认证

相关的基本概念,在初次使用微信前需要注册成为微信用户,然后输入账号和密码即可登录微信,输入账号和密码登录微信的过程就是认证。

**认证 **:用户认证就是判断一个用户的身份是否合法的过程,用户去访问系统资源时系统要求验证用户的身份信息,身份合法方可继续访问,不合法则拒绝访问。常见的用户身份认证方式有:用户名密码登录,二维码登录,手机短信登录,指纹认证等方式。

OAuth(开放授权)是一个开放标准,允许用户授权第三方移动应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方移动应用或分享他们数据的所有内容,OAuth2.0是OAuth协议的延续版本,但不兼容OAuth 1.0(即完全废止了OAuth1.0)。
OAuth 2.0 规范定义了一个授权(delegation)协议。

目前学习Spring Security方面的资料相对来说比较并且并不完善。首先,SSM环境中我们通过xml配置的方式,从源码渗入开始,完成Spring Security基本的“认证”和“授权”功能讲解,其中还会融合“记住我”,CSRF拦截等技术。然后,会在SpringBoot环境中,继续展开Spring Security更深度的学习,这时的认证,也会转化成分布式方式。

第一份笔记:Spring Security OAuth2.0认证授权

1.基本概念

什么是认证什么是会话什么是授权授权的数据模型RBAC

2.基于Session的认证方式

认证流程创建工程实现认证功能实现会话功能实现授权功能

3.Spring Security 快速上手

Spring Security介绍创建工程认证授权

4.Spring Security 应用详解

集成SpringBoot工作原理自定义认证会话退出授权

5.分布式系统认证方案

什么是分布式系统分布式认证需求分布式认证方案

6.OAuth2.0

OAuth2.0介绍Sping Cloud Security OAuth2JWT令牌完善环境配置

7.Spring Security 实现分布式系统授权

需求分析注册中心网关转发明文token给微服务微服务用户鉴权拦截集成测试扩展用户信息.

第二份:企业开发首选的安全框架Spring Security笔记

第二部分:初识Spring Security

1.权限相关概念介绍2.引入认证和授权概念3.Springsecurity介绍4.这里有十一个过滤器原理说明5.数据库环境准备6.数据库使用mysql,这里完成用户,角色,权限三张表准备。7.独立web工程springsecurity权限控制案例技术选型说明8.springmvc+spring+mybatis+jsp+adminLTE9.springsecurity认证功能实现10.这时的认证,还未真正从数据库中获取角色信息。

第二部分:Spring Security授权操作

11.实现用户管理角色查询功能12.为授权做准备13.实现用户角色的修改功能14.可增添可删减用户的角色15.在jsp页面上采用springsecurity动态标签控制菜单的显示或隐藏16.Springsecurity在独立web工程中使用,其实并未用到权限表,就是说菜单并没有入库,直接全部写死在页面上,使用springsecurity动态标签控制显示或隐藏。17.在后台使用注解真正控制用户对资源的访问权限18.这里会使用jsr250,springEL,springsecurity三类注解来演示19.403异常的处理20.用三种方式来处理403异常的拦截

第三部分:SpringSecurity整合SpringBoot集中式版

21.Swagger制作restfulAPI介绍22.既然要使用前后端分离的方式,怎么能少了API?23.将后台所有返回页面的处理器改成返回数据的处理器24.都前后端分离了,再返回页面还有什么意义?25.说明前后端分离后项目中认证的问题26.这时的页面和后台在不同的服务器中,所以会存在session不能共享的问题。27.介绍JWT28.说明JWT的功能和作用29.Springsecurity整合JWT30.通过springsecurity加JWT的方式来实现前后端分离的认证

第四部分:OAuth2.0实战案例

31.将所有页面换成vue32.前后端分离jsp自然就不能再用了33.创建权限表并将所有菜单入库34.之前独立一个web工程的时候,菜单是直接写死在页面上并没有入库的,而前后端分离后springsecurity的动态标签无法使用了。35.完成角色管理权限查询功能36.为动态展示菜单做准备。37.完成修改角色下菜单的功能38.还是为动态展示菜单做准备39.介绍element-ui的使用40.页面展示菜单技术准备41.认证通过后在页面上动态展示菜单42.使用element-ui完成动态菜单的展示。


点击全文阅读


本文链接:http://zhangshiyu.com/post/48593.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1