web 安全认证-角色 权限 模块分配

本文介绍了web应用的安全认证配置,包括在web.xml中设置登录方式、定义角色和资源约束,以及在JBoss和Tomcat中使用不同方式进行用户身份验证。详细讲解了如何在数据库中存储用户和角色信息,并通过 ejb 的注解实现角色权限控制。
摘要由CSDN通过智能技术生成

所有的web的认证在验证的配置的web.xml文件基本上一致:

1.配置web.xml

<!--登录方式-->

 <login-config>
   <auth-method>BASIC</auth-method>   <!--BASIC基本的弹出输入框-->
 </login-config>
 <!--  定义角色 -->
 <security-role>
  <role-name>leader</role-name>
 </security-role>
 <security-role>
  <role-name>employs</role-name>
 </security-role>
 
<!-- 管理模块和角色绑定 -->
 <security-constraint>
  <web-resource-collection>
   <web-resource-name>list module</web-resource-name>  <!--起名-
->
   <url-pattern>/list/*</url-pattern>

                                           <!--使用区域[可以配置多个,从而使你做的更精确]-->
   <http-method>GET</http-method>                                  <!--请求方式-->
   <http-method>POST</http-method>
  </web-resource-collection>
  <auth-constraint>                                        <!--使用哪种角色-->
   <role-name>leader</role-name>
   <role-name>employs</role-name>
  </auth-constraint>
 </security-constraint>
 <security-constraint>
  <web-resource-collection>
   <web-resource-name>manager module</web-resource-name>
   <url-pattern>/manager/*</url-pattern>
   <http-method>GET</http-method>
   <http-method>POST</http-method>
  </web-resource-collection>
  <auth-constraint>
   <role-name>leader</role-name>
  </auth-constraint>
 </security-constraint>

2.创建文件

      在webRoot下建立list和manager文件夹,并在其建立几个jsp页面.

      insert.jsp写几个超链接,分别连接到各个文件夹下的jsp页面.

 

 

<!----------------------------------jboss和tomcat的使用------------------------------->

 

1.JOBSS的文件认证配置,默认的domain:other:读取src的下面两个配置文件

    users.properties

                         username=password

                                   zhouhr=888888

                                   eylen=888888 

                                   zhr=888888

    roles.properties

                         username=roles

                                   zhouhr=leader

                                   eylen=employs 

                                   zhr=employs

 

2.tomcat使用数据库:

      配置tomcat/conf/server.xml

      整个tomcat只能使用一种方式认证:要不配置文件,要不连接数据库。所以要将之前的方式注释:

        <!--
   <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>
   -->

    配置已数据库相关的realm,再此我使用mysql数据库,[oracle数据库也类似,直接改它提供的(注释)]

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

 

 

在Mysql数据库中建数据库:create database web;

建表:create table users(user_name varchar(20),user_pass varchar(20));

         create table user_roles(user_name varchar(20),role_name varchar(20));

插入数据:

          insert into users values('zhouhr','888888');

          insert into users values('eylen','888888');

          insert into users values('zhr','888888');

          insert into user_roles values('zhouhr','leader');

          insert into user_roles values('eylen',employs');

          insert into user_roles values('zhr','employs');

                                 

二、jboss配置domain使用数据源

 

   

.

jboss默认的domainother

默认读取src下的users.properties;roles.peroperties

为了我们根据自己的数据去角色分配我们要定义自己的domain

jboss-4.2.0.GA/server/default/conf

login-config.xml

<application-policy name = "myDomain">

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值