e一个字段。
create table roles (rolename varchar(20) not null)
3、创建用户-角色关联表
该表维护着一个用户和各个角色之间的关联,一个用户可以属于一个或多个角色。
create table user_roles (username varchar(20) not null, rolename varchar(20) not null)
4、在表中插入数据
insert into users values(''user1'', ''password'')
insert into role values(''manager'')
insert into user_roles values(''user1'', ''manager'')
5、创建用户表。
该数据库表需要有username和password二个字段。
create table users (username varchar(20) not null, password(20) not null)
6、创建角色表
该表维护着应用程序中角色的清单,它仅仅有rolename一个字段。
create table roles (rolename varchar(20) not null)
7、创建用户-角色关联表
该表维护着一个用户和各个角色之间的关联,一个用户可以属于一个或多个角色。
create table user_roles (username varchar(20) not null, rolename varchar(20) not null)
8、在表中插入数据
insert into users values(''user1'', ''password'')
insert into role values(''manager'')
insert into user_roles values(''user1'', ''manager'')
9、通过将下面的信息拷贝到{tomcat}\conf\文件夹的server.xml文件中,配置Tomcat。(本例使用了薄客户端驱动程序,Tomcat使用内存区域作为缺省的安全区域。)
<Realm
className="org.apache.catalina.realm.JDBCRealm"
debug="99"
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@{IP address}:{Port}:{Servicename}"
connectionName="{DB Username}"
connectionPassword="{Password}"
userTable="users"
userNameCol="username"
userCredCol="password"
userRoleTable="user_roles"
roleNameCol="rolename"
/>
用环境变量替换下面的值:
{IP Address} ━━数据库服务器的IP地址
{Port} ━━端口号
{Servicename} ━━服务名字
{DB Username} ━━数据库登录
{Password} ━━数据库登录的口令
J2EE的安全认证机制(4)
时间:2010-09-28
10、将Oracle的薄客户机驱动程序JAR文件或数据库的JDBC驱动程序拷贝到{tomcat_home}/server/lib目录中。
11、用下面的安全约束配置Web应用程序的部署描述符
<security-constraint>
<web-resource-collection>
<web-resource-name>Protected Area</web-resource-name>
<!-- 定义需要被保护的URL -->
<url-pattern>/*</url-pattern>
<http-method>DELETE</http-method>
<http-method>GET</http-method>
<http-method>POST</http-method>
<http-method>PUT</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>manager</role-name>
</auth-constraint>
<user-data-constraint><transport-guarantee>
NONE</transport-guarantee></user-data-constraint>
</security-constraint>
<!-- 缺省的登录配置使用基于表单的认证 -->
<login-config>
<auth-method>FORM</auth-method>
<realm-name>Example Form-Based Authentication Area</realm-name>
<form-login-config>
<form-login-page>/jsp/login.jsp</form-login-page>
<form-error-page>/jsp/error.jsp</form-error-page>
</form-login-config>
</login-config>
需要注意的是,<auth-constraint>中<role-name>的值应当是用户-角色关联表中中角色之一。
在Tomcat中配置例子文件
1、使用 |