我有一个Web应用程序,当用户登录时,他们到达mainjsp.jsp页面.
在此页面中,日期的文本框很少,并根据日期和从另一个下拉列表中选择,提交数据.这些数据由servlet检索并返回到mainjsp页面.
我担心的是安全问题.现在,当我复制粘贴mainjsp.jsp页面的URL并将其粘贴到任何浏览器中时,此页面将按原样显示.我不希望这种情况发生.我希望用户首先登录,因此我希望我的Web应用程序安全.
我不知道该怎么做.你能告诉我怎样才能做到这一点?
解决方法
您应该有基于表单的身份验证.以下是应添加到web.xml的代码段
<security-constraint> <web-resource-collection> <web-resource-name>pagesWitUnrestrictedAccess</web-resource-name> <description>No Description</description> <url-pattern>*.jsp</url-pattern> </web-resource-collection> <user-data-constraint> <description>No Description</description> <transport-guarantee>NONE</transport-guarantee> </user-data-constraint> </security-constraint> <login-config> <auth-method>FORM</auth-method> <form-login-config> <form-login-page>/login.jsp</form-login-page> <form-error-page>/loginerror.jsp</form-error-page> </form-login-config> </login-config>
一些参考文献:
> Securing Web Applications
> Securing Java EE 5 Web Applications
> Declaring Security Requirements in a Deployment Descriptor