网站维护更新费用,学校文化建设聚奇网站,江西邢台网络科技,新手做导航网站文章目录 往期回顾#xff1a;Spring Boot集成Spring Security专栏及各章节快捷入口前言一、授权概述二、用户权限三、用户授权流程三、Spring Security授权方式1、请求级别授权2、方法级别授权 往期回顾#xff1a;Spring Boot集成Spring Security专栏及各章节快捷入口
Spr… 文章目录 往期回顾Spring Boot集成Spring Security专栏及各章节快捷入口前言一、授权概述二、用户权限三、用户授权流程三、Spring Security授权方式1、请求级别授权2、方法级别授权 往期回顾Spring Boot集成Spring Security专栏及各章节快捷入口
Spring Boot集成Spring Security专栏一、Spring Boot集成Spring Security之自动装配二、Spring Boot集成Spring Security之实现原理三、Spring Boot集成Spring Security之过滤器链详解四、Spring Boot集成Spring Security之认证流程五、Spring Boot集成Spring Security之认证流程2六、Spring Boot集成Spring Security之前后分离认证流程最佳方案七、Spring Boot集成Spring Security之前后分离认证最佳实现八、Spring Boot集成Spring Security之前后分离认证最佳实现对接测试九、Spring Boot集成Spring Security之授权概述十、Spring Boot集成Spring Security之HTTP请求授权
前言
本文介绍什么是授权Spring Security的授权配置有哪些配合以下内容观看效果更佳
什么是授权授权有哪些流程Spring Security的授权配置有几种请查看九、Spring Boot集成Spring Security之授权概述HTTP请求授权的实现原理是什么如何配置HTTP请求授权请查看十、Spring Boot集成Spring Security之HTTP请求授权方法授权的实现原理是什么如何配置方法授权请查看十一、Spring Boot集成Spring Security之方法授权如何实现基于RBAC模型的授权方式请查看十二、Spring Boot集成Spring Security之基于RBAC模型的授权
一、授权概述
授权简单来说就是判断某个用户能不能访问某个接口可以访问时授权成功不能访问时授权失败用户包括已登录的用户和未登录的用户即匿名用户接口包括接口地址和接口的请求类型接口对于系统使用者来说可以简单理解为菜单按钮。
目前最流行的权限模型是RBAC权限模型这种模型的思想是将菜单/接口/权限按照完成某项任务的最小权限进行分组分出来的组即为角色再按照用户的职责授予相应的角色。其中菜单/接口/权限和角色之间为多对多的关系即一项任务可能需要多个操作或者多项任务可能需要同一个操作用户与角色之间也是多对多的关系即一个用户可能需要完成多项任务或者不同用户可能需要完成相同的任务。
Spring Security的授权还包括对认证结果、接口请求参数、接口返回值等更细粒度的处理。
二、用户权限
Spring Security中用户的权限接口为GrantedAuthority并提供默认实现SimpleGrantedAuthoritySimpleGrantedAuthority有一个String属性rolerole用于判断用户是否允许访问接口。
在配置接口权限时还有两个权限的概念rolehasXxxRole和authorityhasXxxAuthorityrole和authority最终都会转化为SimpleGrantedAuthority的role属性并和用户的权限作对比以判断用户是否允许访问接口唯一的区别是role转为SimpleGrantedAuthority的role属性时会默认添加ROLE_前缀而authority会直接转化为SimpleGrantedAuthority的role属性即ROLE_{role}{authority}simpleGrantedAuthority.role。
三、用户授权流程
认证时设置用户权限授权时获取接口及其需要的权限校验用户权限和接口权限是否有交集有交集时校验成功调用接口没有交集时校验失败抛出异常
三、Spring Security授权方式
1、请求级别授权
实现方式过滤器适用场景 基于URL的访问控制统一的安全策略简单地权限控制
2、方法级别授权
实现方式AOP拦截器适用场景 细粒度的访问控制动态权限检查基于业务逻辑的权限控制