小编via*_*tor的帖子

如何设置Spring Security SecurityContextHolder策略?

我在我的服务中使用异步方法(Spring 3 @Async注释).而且我遇到了问题 - 衍生线程没有安全上下文.原因是Spring Security默认使用SecurityContextHolder.MODE_THREADLOCAL其上下文持有者的策略.但我需要使用SecurityContextHolder.MODE_INHERITABLETHREADLOCAL策略.目前我在AuthenticationSuccessHandler中设置了策略.但在我看来,这不是一个好习惯.

那么如何在上下文配置文件中进行设置呢?
spring security的版本是3.0.0.

spring spring-security

30
推荐指数
4
解决办法
3万
查看次数

如何使用spring-security和jQuery处理过期的会话?

我在我的应用程序中使用spring-security和jQuery.主页使用Ajax动态加载内容到选项卡.一切都很好,但有时我的选项卡中有登录页面,如果我输入凭据,我将被重定向到没有标签的内容页面.

所以我想处理这种情况.我知道有些人使用ajax身份验证,但我不确定它是否适合我,因为它对我来说看起来很复杂,我的应用程序不允许任何访问而无需登录.我想为所有ajax响应编写一个全局处理程序,window.location.reload()如果我们需要进行身份验证,它将会执行.我认为在这种情况下,最好是获取401错误而不是标准登录表单,因为它更容易处理.

所以,

1)是否可以为所有jQuery ajax请求编写全局错误处理程序?

2)我如何自定义spring-security的行为以便为ajax请求发送401错误,但是常规请求像往常一样显示标准登录页面?

3)你可能有更优雅的解决方案吗?请分享.

谢谢.

authentication ajax jquery spring-security session-timeout

23
推荐指数
3
解决办法
4万
查看次数

如何在Spring-security的SecurityContext中存储自定义信息?

在我的应用程序中,我正在使用LDAP身份验证.但我也有2个远程服务,需要通过方法登录(用户名,密码)进行身份验证.该方法返回安全令牌,这使我能够调用另一个方法,即我应该将安全令牌作为第一个参数传递给服务方法.
因此,我想在使用LDAP成功登录后立即获取这些安全令牌,并将它们存储在SecurityContext中.我试图用认证成功处理程序,裁判形式登录元素.使用处理程序我替换身份验证SecurityContext中的对象,具有自定义AuthenticationToken,不仅包含密码,还包含安全令牌.但在这种情况下,我有一个例外,即没有身份验证提供程序支持此类令牌.我知道也可以在HTTP会话中存储令牌,但在这种情况下我必须将会话传递给服务对象,所以我想将令牌存储在SecurityContext中.

处理服务安全令牌的最佳方法是什么?

authentication customization spring-security

6
推荐指数
2
解决办法
2万
查看次数