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

相关推荐
是小崔啊4 小时前
事务03之MVCC机制
数据库·mysql·事务·
LUCIAZZZ8 小时前
简单的SQL语句的快速复习
java·数据库·sql
Elastic 中国社区官方博客10 小时前
使用真实 Elasticsearch 进行高级集成测试
大数据·数据库·elasticsearch·搜索引擎·全文检索·jenkins·集成测试
@_@哆啦A梦10 小时前
Redis 基础命令
java·数据库·redis
fajianchen10 小时前
MySQL 索引存储结构
数据库·mysql
一张假钞10 小时前
Spark SQL读写Hive Table部署
hive·sql·spark
想做富婆11 小时前
oracle: 多表查询之联合查询[交集intersect, 并集union,差集minus]
数据库·oracle·联合查询
xianwu54312 小时前
反向代理模块jmh
开发语言·网络·数据库·c++·mysql
Leven19952712 小时前
Flink (十三) :Table API 与 DataStream API 的转换 (一)
数据库·sql·flink
geovindu13 小时前
neo4j-community-5.26.0 create new database
数据库·mysql·neo4j