`
bing8848
  • 浏览: 45236 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

spring acegi 权限设计

阅读更多

一般在一个应用系统中都会有权限的设计,最基本的权限设计会关系到五张表,用户表,角色表,权限表用户和角色的中间表,角色和权限的中间表,这样五张表,在负责一些的权限设计还会进行分组,将资源放入表中,并建立权限和资源的中间关系表,

http://p.blog.csdn.net/images/p_blog_csdn_net/cailiang517502214/EntryImages/20090923/59833db1tc7a7e10c3d18&690副本.jpg


spring acegi 是spring框架中最为优秀的框架之一,今天讲的是关于spring acegi的权限配置,其中会采用jcaptcha的验证码服务 整个项目 采用struts2.16(注解) hibernate3.12(注解) spring2.5(注解) spring acegi 2.05的版本.
整个项目的结构如图:

要在项目中使用spring acegi需要在web.xml中引入 acegi

(struts2 和hibernate的引入就不说了,关于验证码 在后面下载的例子中会有详细的配置)
在引入acegi后,最主要的就是关于applicationContext-serurity.xml文件的配置了,

intercept-url 是表示受保护的资源,access是指那些角色具有访问权限,由于acegi的默认权限是一ROLE_开头的,所以通过access-decision-manager-ref="accessDecisionManager" 这个bean标签可以修改成你所需要的前缀,并不局限于acegi,form-login 配置系统的登录页面,default-target-url是指登录成功后返回的页面,authentication-failure-url是指认证失败后的页面,
acegi的认证模式有好几种,比如数据库的认证模式(常用模式),cas认证等等,
<authentication-provider user-service-ref="myUserDetailServices >
</authentication-provider >
这种模式 是基于数据库的认证模式 myUserDetailServices 是自己定义的一个spring bean
<beans:bean id="myUserDetailServices" class="com.happy.services.LoginValidate"></beans:bean>

这是我们自己写的一个类,但是这个类有些特殊,这个类必须实现 UserDetailsService接口实现loadUserByUsername方法并 返回UserDetails
当然在测试的时候 我们可以把用户名和这些直接写在配置文件中

去掉基于数据库的认证模式. 这样就完成了acegi的配置,当具有权限的人才有权访问指定的页面,acegi还有一系列的标签,用来在页面上控制内容的展示,


<%@ taglib prefix="security" uri="http://www.springframework.org/security/tags"%>(导入标签)
比如说 <security:authorize ifAnyGranted="A_Administrator">删除</security:authorize> 当用户具有A_Administrator的权限时 才会显示 删除菜单,这就是一个简单的基于acegi权限的配置


资源的下载地址:
http://download.csdn.net/source/1620226 带验证码(基于配置文件的验证)
http://download.csdn.net/source/1606935 不带验证码 (基于数据库的验证)

分享到:
评论

相关推荐

    基于Spring框架应用的权限控制系统的研究和实现

    本文探讨了Acegi安全框架中各部件之间的交互,并通过扩展Acegi数据库设计来实现基于Spring框架的应用的安全控制方法。 关键词Spring;Acegi;认证;授权1引言 近年来,随着Internet技术的迅猛发展,计算机网络已...

    实现基于Spring框架应用的权限控制系统

    本文探讨了Acegi安全框架中各部件之间的交互,并通过扩展Acegi数据库设计来实现基于Spring框架的应用的安全控制方法。关键词Spring;Acegi;认证;授权引言近年来,随着Internet技术的迅猛发展,计算机网络已深入到...

    Spring Security 中文教程.pdf

    16. acegi到spring security的转换方式 16.1. Spring Security是什么 16.2. 目标 16.3. 步骤 16.4. 总结 V. 高级话题 17. 领域对象安全(ACLs) 17.1. 概述 17.2. 关键概念 17.3. 开始 18. 预认证...

    Spring Security-3.0.1中文官方文档(翻译版)

    16. acegi 到spring security 的转换方式 16.1. Spring Security 是什么 16.2. 目标 16.3. 步骤 16.4. 总结 V. 高级话题 17. 领域对象安全(ACLs) 17.1. 概述 17.2. 关键概念 17.3. 开始 18. 预...

    java开源包1

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包11

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包2

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包3

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包6

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包5

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包10

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包4

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包8

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包7

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包9

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    java开源包101

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    Java资源包01

    Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java...

    JAVA上百实例源码以及开源项目

    例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;...

Global site tag (gtag.js) - Google Analytics