有没有办法在Spring中指定会话超时?我无法在web.xml中指定它.因为我在控制器中使用会话范围bean如下所示
我已经通过spring xml文件配置了控制器.
class xyzController{
ABCSessionScopeClass objectWhichWillBeStoredInSession;
}
Run Code Online (Sandbox Code Playgroud)
我也不能用它
session.setMaxInactiveInterval(60*60);
Run Code Online (Sandbox Code Playgroud)
有没有其他方法可以做到这一点.我不介意在每个会话或同时为所有会话设置超时.
我们使用Spring Boot + Spring Security设计了多租户WebApp.此应用程序用于管理Azure中的某些资源.用户使用OAuth2.0登录我们的WebApp,并可以通过我们的应用程序访问Azure资源.
现在,我们需要允许多个用户在单个浏览器会话中登录我们的应用程序.因此,基本上用户(用户1)将使用credentials1登录以访问这些凭证所允许的资源.然后,用户将使用credentials2(基本上是另一个用户凭据,可以将其称为user2)登录到同一浏览器页面.同一会话中将有两个活动用户.用户应该能够在这些帐户之间切换.
用户登录我们的应用程序后,我们实例化RestTemplate(使用输入的凭据)来访问Azure资源.
要么我们可以将单个JSession id映射到多个RestTemplate,要么将多个JSession ID(在单个JSession cookie中)映射到单个RestTemplate.我们可以有请求参数来指示要使用的RestTemplate.
我们使用SpringSecurity来获取访问令牌.然后,此访问令牌将在RestTemplate中使用,并用于访问Azure资源.
spring spring-security spring-boot spring-security-oauth2 spring-session