1

我有几个带有 JSF 页面的 WAB 包。我知道如何创建简单的 JSF 登录页面。问题是 WAB 包如何共享用户会话?我想要一个登录菜单来注册所有 WAB 包的会话。

4

1 回答 1

3

每个 WAB 都部署为单独的 Web 应用程序。我不确定您将 WAB 部署到哪个容器,但可以配置一些 servlet 引擎(例如 Tomcat 或 Jetty)以在不同的 Web 应用程序 (WAR) 之间共享会话数据。(请参阅WAR 之间的共享会话

另一种选择是开发您自己的单点登录服务。此服务可以部署为 OSGi 包并由每个 WAB 使用。第一个登录的 WAB 向服务注册用户和密码。秘密也被加密存储在对整个域有效的安全 cookie 中(无路径)。一旦另一个 WAB 注意到 cookie,它就可以立即登录用户。但是,每个 WAB 仍然有自己的会话。但单点登录服务也可用于在 WAB 之间共享其他数据。该服务还应实施一些清理处理以丢弃旧数据。您还可以实施其他安全选项以使服务适应您的需求。

于 2012-08-07T06:18:59.053 回答