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访问权限

相关推荐
YS_Geo1 天前
Redis 深度解析:数据结构、持久化与集群
数据结构·数据库·redis
IvanCodes1 天前
六、Docker 核心技术:Dockerfile 指令详解
java·数据库·docker
寻星探路1 天前
数据结构造神计划第三天---数据类型
数据库
l5657581 天前
第五十五天(SQL注入&增删改查&HTTP头&UA&XFF&Referer&Cookie&无回显报错&复盘)
数据库
上海达策TECHSONIC1 天前
经验分享:如何让SAP B1数据库性能提升50%
运维·数据库·运维开发
言之。1 天前
深入解析Django重定向机制
数据库·django·sqlite
感哥1 天前
MySQL索引
mysql
时序数据说1 天前
国内开源时序数据库IoTDB介绍
大数据·数据库·物联网·开源·时序数据库·iotdb
liangshanli1 天前
MCP MySQL Server v2.0.1 发布:智能 DDL 日志记录,让数据库变更可追溯
mysql