01.SpringSecurity授权原理
在第二部分中我们讲解的都是用户认证, 不管是用户名密码,还是图形验证码等,最终的目的都是一个:让系统知道你到底是谁在访问你的系统, 解决的问题是, 你是谁? 这部分主要讲解你能在系统中做什么事情, 针对这个有的叫做: 授权, 有的叫做:鉴权, 还有叫权限控制. 最终的目的就是你能在系统中能过做什么?
Spring Security 对授权的定义
安全权限控制问题其实就是控制能否访问url
Spring Security 授权原理
在我们应用系统里面,如果想要控制用户权限,需要有2部分数据。
1)系统配置信息数据:写着系统里面有哪些URL,每一个url拥有哪些权限才允许被访问。
2)另一份数据就是用户权限信息:请求用户拥有权限
系统用户发送一个请求:系统配置信息和用户权限信息作比对,如果比对成功则允许访问。
当一个系统授权规则比较简单,基本不变时候,系统的权限配置信息可以写在我们的代码里面去的。比如前台门户网站等权限比较单一,可以使用简单的授权配置即可完成,如果权限复杂,例如办公OA, 电商后台管理系统等就不能使用写在代码里面了。 需要RBAC权限模型设计。
Spring Security 授权
内置权限表达式
Spring Security 使用Spring EL来支持,主要用于Web访问和方法安全上, 可以通过表达式来判断是否具有访问权限。下面是Spring Security常用的内置表达式。
ExpressionUrlAuthorizationConfigurer定义了所有的表达式
分类:
spring security
标签:
spring security
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY