spring security

权限代码业务逻辑代码不分离会造成形式结构的阅读冗余混乱。spring security是spring的安全框架。实现不影响原有业务逻辑代码的前提下,使用filter(拦截web请求)保护资源层级。实现使用spring aop权限控制方法层级。

spring security是基于spring、springMvc的申明式安全框架。该框架充分使用了spring ioc、spring aop

、spring filter。该框架实现了web请求和方法调用的验证与授权。


spring security框架可以使用的加密算法与对应加密类


spring security 使用spring aop权限控制方法调用。一般有三种使用方式:

使用标签<intercept-methods> (对应xml)

使用切点<protect-pointcut> (对应方法)

使用注解如注解或jsr-250注解 (对应类、方法)


AuthenticationManager

AccessDecisionManager

SecurityMetadataSource


controller写一个测试接口, 跳转相关url, 如果添加了spring security依赖,则自动首先跳转登录页面。该页面由spring security框架内嵌. 默认的用户名是user,默认的登录密码见启动日志.


在Spring Security中,通常会使用JWT(JSON Web Token)进行身份验证和授权。登录请求会返回一个包含JWT的token,之后在别的请求中需要在Headers中添加Authorization字段,并将token值加上Bearer前缀,如:Authorization: Bearer <token值>。


参考:

https://zhuanlan.zhihu.com/p/559072121

相关推荐
带刺的坐椅13 小时前
Solon AI 开发学习16 - generate - 生成模型(图、音、视)
java·ai·llm·openai·solon
jiayong2313 小时前
Spring Bean 生命周期详解
java·后端·spring
猎人everest13 小时前
Django Rest Framework (DRF) 核心知识体系梳理与深度讲解
后端·python·django
9号达人13 小时前
大家天天说的'银弹'到底是个啥?看完这篇你就明白了
前端·后端·程序员
卿雪13 小时前
缓存异常:缓存击穿、缓存穿透、缓存雪崩 及其解决方案
java·数据库·redis·python·mysql·缓存·golang
无限进步_13 小时前
C语言文件操作函数解析
c语言·开发语言·数据库·c++·后端·visual studio
小坏讲微服务13 小时前
Spring Boot 4.0 整合 RabbitMQ 注解方式使用指南
java·spring boot·rabbitmq·java-rabbitmq
星辰烈龙13 小时前
黑马程序员Java基础7
java·开发语言
big-seal13 小时前
分页列表中能够按照名称查询,使用 mybatis 的 Example 动态构造 SQL where 条件
java·开发语言
福尔摩斯张13 小时前
C语言文件操作详解(一):文件的打开与关闭(详细)
java·linux·运维·服务器·c语言·数据结构·算法