spring security 安全模块
登录无非 认证 授权
1 认证 判定用户能否登录
2 授权 判定用户权限
Shiro 轻量级框架 spring security重量级
springboot/springCloud 整合 spring security
1 创建一个boot项目 2引入依赖 3写一个测试Controller(记得配置端口号 默认8080 别冲突)
--------------------------------------------------------------------------------------------------------------------------------
Spring Security 本质是一个过滤器链(很多过滤器)
过滤器怎么进行加载
-------------------------------------------------------------------------------------登录认证
Spring Security 的两个接口
1 查询数据库账号密码 2 密码加密
Spring Security 的账号密码配置
---------------------------------------------------------------------------------------------------------------------------------
自定义获取账号密码 实际情况都是第三种
controller
service
通过数据库进行 账号密码匹配(下面图没有验证密码)
自定义登录页面
--------------------------------------------------------------------------------------------------------------------------------
授权
主要是4个方法
一 hasAuthority 只有全部符合配置类里面的权限才能访问
二 hasAnyAuthority 符合里面任意一个即可
三 hasRole
四 hasAnyRole
自定义 上面的没有权限(403页面)
认证授权注解
一 @Secureder
二 @PreAuthorize 方法执行之后校验
三 @PostAuthorize 方法执行之前校验
四 @PostFilter @PreFilter
用户注销
自动登录
1 cookie
2 spring security
具体实现
页面端 记得配置 固定
CSRF 跨站请求伪造
默认开启