利用Tocmat安全域实现安全认证

转载 2004年09月30日 13:21:00

注:转自http://blog.csdn.net/ezerg/archive/2004/09/30/121481.aspx

安全域功能是Tomcat内置功能,在org.apache.catalina.Realm接口中声明了把一组用户名、口令及所关联的角色集成到Tocmat中的方法。

内存域:MemoryRealm 从XML文件中读取安全验证信息并存入内存中。
JDBC域:JDBCRealm 通过JDBC驱动程序访问存放在数据库中的信息。
数据源域:DataSourceRealm 通过JDBC数据源访问存放在数据库中的信息。
JNDI域:JNDIRealm 通过JNDI provider访问存放在基于LDAP的目录服务器中的安全验证信息。

设置资源安全约束

在web.xml中加入<security-constraint>元素

<security-constraint>
 <display-name>MZT</display-name>
 <web-resource-collection>
   <web-resource-name>protected test</web-resource-name>
   <url-pattern>/test/*</url-pattern>
   <http-method>POST</http-method>
   <http-method>GET</http-method>
 </web-resource-collection>
 <auth-constraint>
  <role-name>mztadmin</role-name>
 </auth-constraint>
</security-constraint>
<login-config>
 <auth-method>BASIC</auth-method>
 <realm-name>test realm</realm-name>
</login-config>

设置JDBC域

<Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
driverName="org.gjt.mm.mysql.Driver"
connectionURL="jdbc:mysql://localhost/mzt"
connectionName="root" connectionPassword=""
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name" />

<Realm className="org.apache.catalina.realm.DataSourceRealm" debug="99"
dataSourceName="jdbc/tomcatusers"
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name"/>

在MySQL中执行以下SQL语句:

#########

#用户表
create table users(
user_name varchar(15) not null primary key,
user_pass varchar(15) not null
);

#用户角色表
create table user_roles(
user_name varchar(15) not null,
role_name varchar(15) not null,
primary key(user_name, role_name)
);

insert into users values('mzt','test');
insert into user_roles values('mzt','mztadmin');

如果有什么问题,可与我联系: webmaster@bcxy.com

利用Tocmat安全域实现安全认证

安全域功能是Tomcat内置功能,在org.apache.catalina.Realm接口中声明了把一组用户名、口令及所关联的角色集成到Tocmat中的方法。内存域:MemoryRealm 从XML文...
  • ezerg
  • ezerg
  • 2004年09月30日 11:03
  • 1117

关于利用Tocmat安全域实现安全认证的问题

读了 利用Tocmat安全域实现安全认证跟着做了一下试验。有以下心得:所以控制的最小单位可以是一个jsp也面,或者一个图片等资源。在server.xml里配置的jdbcRealm可以用于所有的app ...
  • youlin
  • youlin
  • 2004年11月13日 03:33
  • 631

安全域的划分

安全域概述   •网络安全域是指同一系统内有相同的安全保护需求,相互信任,并具有相同的安全访问控制和边界控制策略的子网或网络,且相同的网络安全域共享一样的安全策略。广义可理解为具有相同业务要求...
  • lifushan123
  • lifushan123
  • 2015年05月06日 00:02
  • 729

(2)防火墙的基本配置---1安全域和端口

拿到这个防火墙先观(端)察(详)一下,面板上一共12个千兆电口,两个光口跟GE0 GE1形成Combo。反正这项目也不用光口,暂且放下。还一个HDD扩展口,用于插扩展硬盘。还两个USB,暂时不知道有啥...
  • lzlz70707
  • lzlz70707
  • 2017年02月23日 22:47
  • 986

利用Tocmat配置虚拟主机

在配置文件中已经有一个名为localhost的元素,可以在它的后面加入如下:bcxy.combcxy ...
  • ezerg
  • ezerg
  • 2004年10月08日 19:50
  • 930

建立基于安全域的涉密信息系统

建立基于安全域的涉密信息系统
  • wzsy
  • wzsy
  • 2010年06月07日 17:30
  • 2736

使用JCShell创建/删除辅助安全域

使用JCShell在空白双界面智能卡上创建和删除辅助安全域,如有纰漏,欢迎吐槽。实验前的卡片AID列表Card Manager AID   :  A000000003000000Card Manage...
  • hellogv
  • hellogv
  • 2014年12月04日 10:51
  • 7937

微信分享js-sdk

功能说明:在微信浏览器分享出去的内容,需要自定义分享的内容,拿到分享的标题内容和图片,get到展示的要点 问题汇总: 下载js-sdk,我用的php版本,找到php文件夹即可。 重要:url要即时...
  • u013516897
  • u013516897
  • 2017年12月13日 10:10
  • 1755

flash的安全沙箱---安全域与程序域

什么叫相同域名:协议相同(http和https不同),host相同(www.a.com和new.a.com不同),端口相同(http://www.a.com:80和http://www.a.com:8...
  • xingfeng0501
  • xingfeng0501
  • 2012年08月07日 15:27
  • 3389

Tomcat安全域设置大全

 安全域是tomcat内置的功能,在org.apache.catalina.Realm接口中声明了把一组用户名,口令及所关联的角色集成到Tomcat的方法中,Tomcat5提供了4个实现这一接口的类,...
  • JavaAlpha
  • JavaAlpha
  • 2009年11月04日 10:03
  • 853
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用Tocmat安全域实现安全认证
举报原因:
原因补充:

(最多只允许输入30个字)