我正在编写JBoss 7.11 Web应用程序的登录模块,该模块需要限制用户一次登录的活动会话数(实际数量可配置)。
我目前的计划是编写一个接受用户Principal的自定义登录模块,引用数据库以查看每个用户实际允许的会话数,并拒绝或允许,具体取决于与该Principal关联的用户会话超过了限制。
我的问题是:最好的方法是找出如何引用与校长相关的活动会话数?
我确实有明显的选择来跟踪我的数据库中的活动会话并从那里获取计数,但我不想为此使用数据库。
我还注意到一个答案(Get HttpSession/Request in a JAAS Login Module)表明可以抓取HTTPServletRequests,在这种情况下我可以获得Session甚至ServletContexts,但我不确定是否有任何我可以用这些来做一旦我有了,我就可以在登录模块中完成我想要做的事情。