大家好,今天晚上很荣幸和大家一起,分享和探讨Spring Security的入门,使用,原理和相关问题。
我先做下自我介绍,花名龙遥,做Java有四年了,在第三方支付做的时间长一点,对分步式计算,存储有一点研究。
Spring Security 4 是我们上个月在做一个新产品中用到的,用的时间并不长,我就把我用到的功能,相关原理分享给大家,如果有问题希望和大家一起探讨。
我先给大家发一下分享的目录,如下:
一、目标
[概念]了解基于资源的权限管理方式、SS4如何实现权限的原理
[模型]掌握权限数据模型
[基本功能]实现认证、授权。
[基本功能]基于URL/操作 实现资源权限管理
[进阶]密码加密处理
[进阶]CSRF攻击方式/防御/使用
[进阶]前端与后端的脱离
[进阶]token的存储:redis集中式方法
[进阶]跨域的处理
[高级]自定义:与实际的企业web项目整合开发的方法
[进阶]定制user provider
自定义 认证的过滤器
自定义认证过滤器【authenticationSuccessHandler、authenticationFailureHandler】
自定义filter,包含 authenticationManager,accessDecisionManager,securityMetadataSource
[高级]分步式:远程调用/Jar包管理
二、相关原理
1.1 、[3w1h]Spring security 4
1) what SSH4是什么
2 )who [使用对象]谁需要使用
需要对资源保护的系统/模块
3) why Spring security 4 '
http://www.paymoon.com:8001/index.php/2016/12/07/ss4why-are-spring-security-4/
4 )How 原理是怎样,怎么使用,使用到哪种程度?
在实战前,我们先简单了解下在Spring Security中的认证与授权过程,
三、实战
二个项目
四、问题
1、使用问题
从只知道一个名词到上线使用
如何从只知道概念到第一个案例
2、使用问题
失败跳转导致csrf没发现
如何发现dao里做验证
url跳转,做了一个controller
controller里获取用户信息
跨域问题两个方案,servlet归本溯源
3、从3迁移到4的问题
4、扩展问题【定制与分步式】
浏览顺序,可以跳过目标,从二原理到三的实战,实战中会穿插目标的各种实现