Spring安全上下文,几个用户

用户名

我不明白一件事。例如,如果有5个用户登录到您的应用程序,那么spring security将创建5个不同的上下文?我对春季的情况不太困惑。

spring中的所有组件均为Singleton(默认情况下)。那么,如果我创建一个组件,并且两个不同的经过身份验证的用户正在使用此组件,那么他们正在使用相同的数据?

Bohuslav Burghardt

SecurityContextSecurityContextHolder默认情况下保留在线程本地策略中。这意味着SecurityContext将范围限定为线程。

在Spring MVC应用程序中,每个请求都在其自己的线程中运行。Spring Security(SecurityContextPersistenceFilter特别是)填充在HTTP会话中找到SecurityContextHolderwith SecurityContext(如果已经存在)。

因此,如果在您的应用程序中登录了五个用户,则将存在五个安全上下文,但是处理请求的线程中只有一个属于发出请求的用户。

对于问题的第二部分,是的,多个用户将使用您的Singleton作用域Bean的相同实例。但是我不确定这是一个问题。您的单例bean可能是服务,DAO等,并且您可能不会在用户可以直接更改的状态上存储状态。

希望这篇简短而又简化的文章能解释它,如果不发表评论,我会添加更多细节。

更多信息:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Spring安全上下文,几个用户

来自分类Dev

从Spring安全性上下文访问应用程序上下文

来自分类Dev

Spring-请求上下文或仅用于存储访问令牌的安全性上下文?

来自分类Dev

从视图获取上下文是安全的

来自分类Dev

父目录的SELinux安全上下文

来自分类Dev

如何将用户名设置为安全上下文

来自分类Dev

Spring Security注销不起作用-无法清除安全上下文并且经过身份验证的用户仍然存在

来自分类Dev

MySQL函数用户上下文

来自分类Dev

Antlr4 Visitor几个规则上下文

来自分类Dev

在几个QTableViews上创建不同的上下文菜单

来自分类Dev

Spring 安全在注销时重定向到另一个上下文

来自分类Dev

Spring上下文动态变化

来自分类Dev

Spring REST模拟上下文路径

来自分类Dev

Spring Boot和上下文路径

来自分类Dev

未加载Spring上下文

来自分类Dev

了解Spring MVC中的上下文

来自分类Dev

用于DelegatingFilterProxy的单独Spring上下文

来自分类Dev

找不到Spring Application上下文

来自分类Dev

了解Spring MVC中的上下文

来自分类Dev

Spring上下文动态变化

来自分类Dev

Spring Integration多上下文

来自分类Dev

用于DelegatingFilterProxy的单独Spring上下文

来自分类Dev

Thymeleaf Spring Mail上下文错误

来自分类Dev

未加载Spring上下文

来自分类Dev

找不到Spring Application上下文

来自分类Dev

上下文之间的Spring Integration通信

来自分类Dev

spring paypal api上下文问题

来自分类Dev

Spring 测试:缺少 servlet 上下文

来自分类Dev

isGooglePlayServicesAvailable的上下文(上下文上下文)