您的位置:jsp学习站首页 >> JAVA类 >> JAVA高级 >> 安全技术 Java与安全性,第1部分二(图)

安全技术 Java与安全性,第1部分二(图) (2)

[ 来源:互网络 | 更新日期:2007-09-23 04:17:48 | 浏览次数:17861]
简介:WebLogic支持J2EE安全性模型,该模型依赖于定义在描述符文件中的安全角色来决定访问权限。当部署EAR或WAR时,WebLogic的Authorization Provider就会检查部署描述符,并基于配置的设置创建内部的安全角色。
>  weblogic.security.Security.getCurrentSubject( ),"everyone");
  
  保护用户帐号
  
  WebLogic提供一种用户封锁功能,以防止用户帐号的滥用。当一个用户尝试登录失败的次数达到一个阙值时,该用户就会被封锁。当这种情况发生时,该用户将被封锁一段时间(时间长短可以配置),或者直到管理员解锁该用户为止。在这期间,该用户被禁止使用这些证书访问服务器。为配置用户封锁,需要选择Administration Console左侧窗格中的Security/Realms节点下的安全域。然后,可以使用User Lockout选项卡来调整封锁功能,并查看封锁统计信息。
  
  表17-2列出了User Lockout选项卡下可用的各种配置选项。默认情况下,这些设置被配置为最高安全性。
  
  表17-2. 配置用户封锁
  
 

  当一个用户被封锁时,用户列表(位于Users节点下)中的Locked栏下就会出现一个Details链接。如果选择列表中某个用户的这个链接,就可以查看该用户登录尝试失败的次数,以及最后一次失败的登录尝试的时间。还可以选择Unlock选项,手动重新激活用户的帐户。
  
  角色
  
  和组不同,角色代表一个动态的用户集合。角色成员资格可以通过以下规则进行定义:
  
  用户名
  
  可以指定多个用户名。如果通过身份验证的用户与列表中的一个名称相匹配,而且它满足其他所有规则,它将自动成为该角色的成员。
  
  组名
  
  可以指定多个组名。如果通过身份验证的用户是列表中某个组的成员,而且它满足其他所有规则,它将自动成为该角色的成员。
  
  访问时间
  
  可以定义多个允许用户进行访问的时间段。如果用户试图在一个指定的时间段之内访问资源,而且满足其他所有规则,它将自动成为该角色的成员。
  
  通过使用逻辑AND(与)和OR(或)关系,可以以各种方式组合这些规则。例如,可以基于如下规则创建RoleA:用户属于组UKSeller,而且访问时间在上午8:00到下午9:00之间。那么任何试图在这段时间内访问资源,同时又是UKSeller组成员的用户就会成为RoleA的成员。或者,可以基于如下规则创建RoleB:用户属于组UKSeller,或者访问时间在上午8:00到下午9:00之间。在这种情况下,组UKSeller的每个成员都将始终属于这个角色,同时每个在上午8:00到下午9:00之间访问资源的用户也将成为该角色的一个成员,而不管它属于哪个组。当用户尝试访问受(根据该角色定义的)策略语句保护的资源时,要在运行时对该角色的成员资格条件进行评估。因此,成员资格条件有助于评估在某个时刻用户是否属于该角色。
  
  通常,WebLogic默认的Role Mapping Provider负责管理与在某个安全域中定义的所有角色相关的信息。事实上可以定义两类角色:全局的(scoped)和局部的(scoped)角色。
  
  全局角色
  
  全局角色可用于安全域中的所有资源。当创建一个新域时,就会自动创建一组默认的全局角色;它用于授权对各种操作的访问。这些预定义的全局角色与默认的安全策略(对WebLogic域执行factory-set安全配置)相关联:
  
  Admin
  
  属于该角色的用户对域的各个区域具有完全访问权。这包括以下能力:查看和编辑域配置、启动和停止服务器、部署应用程序(EJB、JMS factory、web应用程序)等等。任何属于Administrators组的用户将自动继承Admin角色。也就是说,Admin角色的成员资格条件是用户必须属于Administrators组
[1] [2] [3] [4] [5] [6] [7]
Tags:关键字:安全技术 安全性
责任编辑:glen