在不访问会话的情况下获取sessionId

时间:2013-04-19 11:26:04

标签: grails spring-security

在我的grails应用程序中,我使用了spring security core插件。 是否有任何方法只需提供用户名和密码

即可为给定用户返回jsessionid

像这样的jsessionid:

def myjsessionid = getJessessionidFromUser("username1", "password1") 

1 个答案:

答案 0 :(得分:0)

我不熟悉grails,但Spring Security本身提供的Concurrent Session Control可以保持SessionRegistry。此注册表将包含有关您可以查询的所有用户会话的信息,例如获取给定校长的sessoin id。

使用SessionRegistry.getAllSessions()获取与给定主体/用户相关的SessionInformation列表,然后在这些对象上getSessionId()

并发控制功能通常用于限制用户可能拥有的会话数,但可以配置为不强制执行此类限制(仅维护注册表)。请参阅Session Management chapter中的详细信息。