一尘不染

使用J2EE进行会话跟踪

jsp

我正在尝试在我的网站上实施会话跟踪。基本上,我希望用户能够使用其用户名和密码登录我的网站,传递抛出我的网站页面(仅适用于登录用户),然后注销。目前,我正在考虑什么是实现此目标的正确架构。因此,这样做是正确的:使用一个servlet验证用户是否已登录,或者该用户是否正在使用httpSession对象进行登录(有点像此处的示例:http://www.tutorialspoint。
com / servlets / servlets-session-
tracking.htm)。如果尝试登录,则servlet通过调用无状态会话bean(基于我的数据库来验证用户名和密码)来验证用户名和密码。

同样,每当用户每次要“旅行”到我网站上仅对已登录用户可见的另一个页面时,请求都必须转到servlet来验证用户是否已登录,然后检索新页面。

这是正确的方法吗?如果没有,我该怎么做?

非常感谢。


阅读 199

收藏
2020-06-10

共1个答案

一尘不染

我对术语 会话跟踪 感到困惑,但是我知道您想允许用户访问受保护的资源。

您需要定义角色,身份验证提供程序和安全资源的映射。然后,您可以将其合并到web.xml中:

<security-constraint>
         <display-name>SecurityConstraint</display-name>
        <web-resource-collection>
              <web-resource-name>WRCollection</web-resource-name>
             <url-pattern>/*</url-pattern>
     </web-resource-collection>
        <auth-constraint>
              <role-name>TutorialUser</role-name>
        </auth-constraint>
        <user-data-constraint>
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
        </user-data-constraint>
   </security-constraint>
  <login-config>
        <auth-method>FORM</auth-method>
     <form-login-config>
              <form-login-page>/loginform.html</form-login-page>
             <form-error-page>/loginerror.html</form-error-page>
      </form-login-config>
 </login-config>
 <security-role>
    <role-name>TutorialUser</role-name>
</security-role>

有关详细信息,请参见http://docs.oracle.com/cd/E19226-01/820-7627/bncby/index.html。这是JEE的标准方式。

2020-06-10