Spring Security认证授权介绍

一、目标

真正控制系统权限的,需要引入专门的安全框架才行,所以,我们今天重点来学习Spring家族中的一员Spring Security安全框架。最终呢,我们会使用Spring Security框架来控制养老项目的后台管理系统

  • 能够熟悉常见的权限控制的方式及常用技术

  • 能够掌握Spring Security安全框架的作用

  • 能够完成Spring Security安全框架的入门案例

  • 能够掌握Spring Security密码加密的方式及特点

  • 能够掌握Spring Security框架授权的思路

  • 能够完成Spring Security整合JWT实现前后端分离项目的认证

二、权限框架

(1)、概述

权限管理是所有后台系统的都会涉及的一个重要组成部分,主要目的是对不同的人访问资源进行权限的控制,避免因权限控制缺失或操作不当引发的风险问题,如操作错误,隐私数据泄露等问题。

那么如何在项目中实现权限呢?我们下面列举以下几个方案:

方案一:使用 拦截器 (过滤器)+ JWT 实现地址鉴权

方案二:使用权限框架 Shiro

方案三:方案二:使用权限框架 Spring Security

Shiro和Spring Security都是成熟的安全框架,在养老项目目前已经在使用Spring框架,那么Spring Security就是更好的选择。并且在使用市场占比上Spring Security也远超于Shiro

(2)、核心概念

  • 认证

大家可以简单的理解为:用户登录的行为就是认证(你是谁)

判断用户是否存在,判断用户密码是否正确

  • 授权

授权就是用户登录后,控制用户是否有权限访问某些资源。

我们有很多的资源api列表,那这个登录后的用户是否拥有这个api访问权限

相关推荐
想用offer打牌25 分钟前
面试官问:Redis和MySQL数据一致,为什么还需要MySQL?🤠
数据库·redis·mysql
chen.@-@43 分钟前
后端下载限速(redis记录实时并发,bucket4j动态限速)
数据库·redis·缓存
王小小鸭1 小时前
【Oracle APEX开发小技巧12】
数据库·oracle
噼里啪啦啦.1 小时前
Spring事务和事务传播机制
数据库·sql·spring
搬码红绿灯1 小时前
MySQL主从复制深度解析:原理、架构与实战部署指南
数据库·mysql·架构
呼拉拉呼拉1 小时前
Redis高可用架构
数据库·redis·架构·高可用架构
却尘1 小时前
当全世界都在用 Rust 重写一切时,Prisma 却选择了反方向
前端·数据库·orm
藥瓿锻1 小时前
2024 CKA题库+详尽解析| 15、备份还原Etcd
linux·运维·数据库·docker·容器·kubernetes·cka
李少兄1 小时前
解决 idea提示`SQL dialect is not configured` 问题
java·sql·intellij-idea
远方16091 小时前
16-Oracle 23 ai-JSON-Relational Duality-知识准备
数据库·oracle·json