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