2012-12-24 36 views
2

我正在开发一个JSF v1.2 Web应用程序,它将在Websphere Application server 8.0上运行。我们有一个外部安全管理器(SiteMinder)来提供身份验证和授权。如何在JSF和WAS中管理用户会话

根据我的理解,JSF会将当前视图信息存储在会话中。我有一些关于如何在JSF和WAS中管理会话的问题。

  1. 如果状态保存设置为serverside,JSF是否将匿名和登录用户的视图状态存储在会话中?
  2. JSF如何知道用户是否已登录用户?我们 有 告诉JSF这件事吗?
  3. 是否有可能有Trusted Authentication Inceptor (TAI)哪个 告诉WAS当前用户是有效的用户?

我发现了一个类似的帖子在这里Check if session exists JSF

我不知道怎么知道用户登录或没有。在代码中,有userManager.isLoggedIn()。除非WAS知道用户有效,否则这是如何工作的?

您能否提供您的帮助?

回答

2

如果状态保存设置为服务器端,JSF是否将匿名和登录用户的视图状态存储在会话中?

当然。会话与登录用户无关。相反,它通常是相反的:登录用户存储在会话中。


如何JSF知道用户是在用户或没有登录?我们必须告诉JSF吗?

它只是使用了底层HttpSession对象为,该servletcontainer已经创建并长期准备。有关内部工作的深入背景说明,另请参阅How do servlets work? Instantiation, sessions, shared variables and multithreading


是否有可能有一个可信认证拦截器(TAI),告诉是,当前用户是有效用户?

这不是你关心的问题。

+0

谢谢BalusC。让我总结一下。无论用户是否登录,servlet容器都会创建一个会话。我们需要将用户信息存储在上面创建的容器的会话中。 – Deepika

+0

或直至容器,如“容器管理认证”正在执行。 – BalusC