eblogin?user=test&password=test\" userTable=\"users\" userNameCol=\"login\" userCredCol=\"pass\" userRoleTable=\"groups\" roleNameCol=\"group\" />[/pre]下面我们对field参数做详细讲解: [Page]
debug—这是我们设置的debug参数,数字越高显示信息越详细。
driverName—这个是MYSQL驱动的名字。要确保这个驱动的JAR包在TOMCAT的CLASSPATH中能够找到它。
connectionURL—这个是用来建立JDBC连接的数据库URL。在这个field里,weblogin是我们数据库的名字。user和password 是我们登陆数据库的用户数据。
userTable—一个定义有userNameCol和userCredCol字段的表。
userNameCol和userCredCol—users表里定义的login和pass。
现在,我们完成了配置过程。下面,我们要配置WEB应用
程序来被这样一个身份验证方式保护起来。我们要举两个例子。最简单的是基本身份验证方式,然后就是基于表单的身份验证。在第一种情况里,我们尝试访问受保护的数据,将会有一个POP-UP窗口弹出提示你输入你的login和password。在第二种情况里,我们会通过页面的方式来让你通过身份验证。这个页面的内容可以是任意的,这个取决于你要使用怎么样的验证方式了。
基本身份验证方式(BASIC authorization method)
我们假设应用
程序在TOMCAT的\\webapps\\webdemo, 我们要保护所有在admin 子目录里的文件。我们必须打开它的\\webapps\\webdemo\\WEB-INF\\web.xml文件,输入下列内容:
[pre]<security-constraint>
<web-resource-collection>
<web-resource-name>Web Demo</web-resource-name>
<url-pattern>/admin/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>testgroup</role-name>
</auth-constraint></security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Web Demo</realm-name>
</login-config>[/pre]让我们来看看刚才输入的内容。我们为应用程序创建了一个web-resource-name并映射到login-config 。我们还定义了url-pattern, 它指明你受保护
程序的路径。在login-conf中,我们定义了一个BASIC auth-method。
很简单,对吗?不要忘记了,在使改变生效前要停止并重启TOMCAT。
表单身份验证方式(FORM-based authorization method)
对于这种方式,我们仅仅只需要:
修改\\webapps\\webdemo\\WEB-INF\\web.xml
创建一个登陆用的JSP页面, 用户将在这里的HTML表单中输入他的登陆ID和密码
创建一个JSP error页面,一旦验证失败,用户将跳到该页面
如果你先尝试使用BASIC验证方式,你只需要改变login-config 为下面那一段代码。否则,你需要输入security-constraint代码段。使用下面的login-config:
[pre]<login-config>
<auth-method>FORM</auth-method>
<realm-name>Web Demo</realm-name> [Page]
<form-login-config>
<form-login-page>/admin/login.jsp</form-login-page>
<form-error-page>/admin/error.jsp</form-error-page> &