Spring Security会话管理

用户认证通过后,为了避免用户的每次操作都进行认证,可以将用户的信息保存在会话中。会话就是系统为了保持当前用户的登录状态所提供的机制,常见的有基于Session方式、基于Token方式等。Spring Security提供会话管理功能,只需要配置即可使用。同时,如果想结束当前会话,可以在自定义退出功能中销毁会话中的用户信息。

Session的创建策略

默认情况下,Spring Security会为每个登录成功的用户新建一个Session对象进行会话管理,开发者也可以根据具体的需求对Session的创建进行控制。Spring Security管理Session的创建策略有以下四种。

always:如果没有Session就创建一个。

ifRequired:如果需要就创建一个Session,是默认的创建策略。

never:Spring Security将不会创建Session,但是如果项目中其他地方创建了Session,那么Spring Security可以使用它。

stateless:Spring Security将绝对不会创建Session,也不使用Session。

当项目中不想自动创建Session,但是想要使用项目中其他地方创建的Session时,可以选择使用never策略。

@Bean
public  SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.NEVER);return http.build();
}

设置Session的超时时间 

Spring Security对用户信息认证通过后,会将用户信息存入Spring Security应用的上下文对象 如果项目中允许创建Session,默认情况下Session的超时时间为30分钟,如果想要对Session默认的超时时间进行修改,可以在Spring Boot的配置文件中设置Session的超时时间。

server:servlet:session:timeout: 86400s

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/903847.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PostgreSQL数据库操作基本命令

常用操作sql 🔐 用户管理 -- 创建用户 CREATE USER username WITH PASSWORD password;-- 修改用户密码 ALTER USER username WITH PASSWORD newpassword;-- 删除用户 DROP USER username;📦 数据库操作 -- 创建数据库 CREATE DATABASE dbname;-- 删除…

[吾爱出品] 网文提取精灵_4.0

网文提取精灵 链接:https://pan.xunlei.com/s/VOPDvKljcT3EWLjpt5LeDZvfA1?pwdw8kq# 易语言写的,介意的不要下载 相对网文提取工具_2.10.02版,因为是重写界面,目前版本限制最高5线程,暂时不支持批处理。 虽然不支…

每日算法-250502

每日算法 - 2025.05.02 记录一下今天刷的几道 LeetCode 算法题。 3191. 使二进制数组全部等于 1 的最少操作次数 I 题目 思路 贪心 解题过程 遍历数组 nums。当我们遇到 nums[i] 时: 如果 nums[i] 是 1,我们不需要进行操作,因为目标是全 …

移动端开发中设备、分辨率、浏览器兼容性问题

以下是针对移动端开发中设备、分辨率、浏览器兼容性问题的 系统化解决方案&#xff0c;按开发流程和技术维度拆解&#xff0c;形成可落地的执行步骤&#xff1a; 一、基础环境适配&#xff1a;从「起点」杜绝兼容性隐患 1. Viewport 元标签标准化 <meta name"viewpor…

2025最新AI绘画系统源码 - 画图大模型/GPT-4全支持/AI换脸/自定义智能体

在AI绘画技术日新月异的2025年&#xff0c;比象AI绘画系统源码以其突破性的技术创新重新定义了数字艺术创作的边界。作为第四代AI绘画引擎&#xff0c;我们不仅集成了最先进的GPT-4o多模态画图模型&#xff0c;实现了从基础文生图到专业级艺术创作的全面进化。本系统源码经过多…

构造函数详解

构造函数的作用 构造函数的主要任务是初始化对象&#xff0c;而不是创建对象&#xff08;对象的内存空间在构造函数被调用前已经分配好&#xff09;。 构造函数特性 命名规则&#xff1a;函数名必须与类名完全相同。 返回值&#xff1a;构造函数没有返回值类型&#xff08;连…

jaffree 封装ffmpeg 转换视频格式,获取大小,时间,封面

下载 参考网址 【收藏级教程】FFmpeg音视频处理宝典&#xff1a;从入门到精通的50个实用技巧_ffmpeg教程-CSDN博客 配置环境变量 验证 重启idea开发工具 springboot maven集成 <dependency><groupId>com.github.kokorin.jaffree</groupId><artifactId&…

2505C++,wmi客户端示例

原文 #define _WIN32_DCOM #include <iostream> using namespace std; #include <comdef.h> #include <Wbemidl.h> #pragma comment(lib, "wbemuuid.lib") int main(int argc, char **argv) {HRESULT hres;//初化COM.hres CoInitializeEx(0, CO…

[面试]SoC验证工程师面试常见问题(三)

SoC验证工程师面试常见问题(三) 在 SoC 验证工程师的面试中,面试官可能会要求候选人现场编写 SystemVerilog、UVM (Universal Verification Methodology) 或 SystemC 代码,以评估其编程能力、语言掌握程度以及解决实际验证问题的能力。这种随机抽题写代码的环节通常…

HTML5+JavaScript实现连连看游戏之二

HTML5JavaScript实现连连看游戏之二 以前一篇&#xff0c;见 https://blog.csdn.net/cnds123/article/details/144220548 连连看游戏连接规则&#xff1a; 只能连接相同图案&#xff08;或图标、字符&#xff09;的方块。 连线路径必须是由直线段组成的&#xff0c;最多可以有…

《深入浅出Git:从版本控制原理到高效协作实战》​

Git的原理和使用 1、Git初识与安装2、Git基本操作2.1、创建Git本地仓库2.2、配置Git2.3、认识工作区、暂存区、版本库2.4、修改文件2.5、版本回退2.6、撤销修改2.7、删除文件 3、Git分支管理3.1、理解分支3.2、创建、切换、合并分支3.3、删除分支3.4、合并冲突3.5、合并模式3.6…

数据分析_问题/优化

1 报表开发 1.1 数据问题 (1) 数据易错 问题描述 ①数据整合困难:数据来源多样、格式差异大,整合时处理不当易丢错数据. ②计算逻辑复杂:开发人员对复杂计算逻辑的理解产生偏差,会导致计算结果不准. 解决方案 ①建立数据标准,统一修正字段命名、数据类型、日期格式等 ②加强…

“深入剖析ThreadLocal原理:从多线程数据隔离到内存泄漏防范“

1.在没有ThreadLocal遇到的问题&#xff1a; 在多线程编程领域&#xff0c;多个线程同时访问同一个变量时&#xff0c;数据一致性成为关键挑战。为防止修改数据时出现覆盖问题&#xff0c;传统解决方案是采用加锁机制&#xff0c;让线程排队依次访问共享变量。然而&#xff0c…

读懂 Vue3 路由:从入门到实战

在构建现代化单页应用&#xff08;SPA&#xff09;时&#xff0c;Vue3 凭借其简洁高效的特性成为众多开发者的首选。 而 Vue3 路由&#xff08;Vue Router&#xff09;则是 Vue3 生态中不可或缺的一部分&#xff0c;它就像是单页应用的 “导航地图”&#xff0c;帮助用户在不同…

Mac M1安装 Docker Desktop 后启动没反应

Mac M1安装 Docker Desktop 后启动没反应 如果在 Mac M1 上安装 Docker&#xff0c;那最好的选择是安装 Docker Desktop但是今天重新安装 Docker Desktop 后&#xff0c;发现点击图标启动怎么也没反应&#xff0c;经过排查后发现换个版本安装就好了&#xff0c;可能是最新的版…

快速上手c语言

快速上手c语言 快速上手c语言关于学c语言的一些信息杂谈第一个C语言程序通过命令行运行c程序Dev-c5.11Visual Studio系列产品 数据类型变量、常量定义变量的方法变量的命名变量的分类变量的使用变量的作用域和生命周期常量 操作符简单介绍语句选择语句循环语句 数组数组定义数组…

Nginx核心功能及正则表达

目录 一&#xff1a;正向代理 1&#xff1a;编译安装nginx &#xff08;1&#xff09;安装支持软件 &#xff08;2&#xff09;创建运行用户、组和日志目录 &#xff08;3&#xff09;编译安装nginx &#xff08;4&#xff09;添加nginx系统服务 2&#xff1a;配置正向代…

npm命令介绍(Node Package Manager)(Node包管理器)

文章目录 npm命令全解析简介基础命令安装npm&#xff08;npm -v检插版本&#xff09;初始化项目&#xff08;npm init&#xff09;安装依赖包&#xff08;npm install xxx、npm i xxx&#xff09;卸载依赖包&#xff08;npm uninstall xxx 或 npm uni xxx、npm remove xxx&…

【Linux】Linux基础概念

一些比较重要的使用Linux的前情提要。 部分经验来源于网络&#xff0c;若有侵权请联系我删除&#xff0c;主要是做笔记的时候忘记写来源了&#xff0c;做完笔记很久才写博客。 专栏目录&#xff1a;记录自己的嵌入式学习之路-CSDN博客 目录 1 Shell命令参数 2 系统变量…

阿里开源Qwen3:大语言模型的新突破

一、模型概览&#xff1a;丰富的模型家族 Qwen3 系列包含了 2 款混合专家&#xff08;MoE&#xff09;模型与 6 款密集&#xff08;Dense&#xff09;模型&#xff0c;参数量覆盖范围极广&#xff0c;从 0.6B 一直延伸至 235B 。其中&#xff0c;旗舰模型 Qwen3 - 235B - A22B…