Java论坛网»Java技术»aop实现权限管理的讨论,希望大家积极参与!

aop实现权限管理的讨论,希望大家积极参与!

问?:
我现在作了一个简单的权限管理模块(struts,hibernate,spring),采用的是spring的aop动态代理模式,定义了一个验证权限的advice实现methodbeforadvice的before方法,定义两个全局异常 1.是未登陆异常 2.权限不匹配异常! 一个error.jsp用于报告错误信息.
程序流程大概是这样的:
1.用户登陆 事件-保存用户名和权限组成的map到session中
2.根据aop的beannameautocreator代理模式来为struts的action创建自动代理
3.action的类在spring的applicationContext.xml中根据用户要求权限级别分组,xxxManager,xxxGust----
4.定义对应每组的验证advice,当用户触发struts的action中的excute方法之间自动调用advice检查权限是否匹配,如匹配则程序正常运行,如发现不匹配则抛出未登陆或是无操作此功能的权限的异常,提示客户重新登陆或操作其他功能.
5.在jsp页面上加上自定义标签也是一个权限验证,组成双层验证(前台要验证,后台类也要验证);
我的思路就是这样,并且已经可以成功运行!但是有一个问题,想和大家讨论!
a.感觉这种权限分配是更具用户角色或功能进行分组定义,感觉管理起来非常不灵活,并且分组也不太好把握的,权限或是角色分组怎样作才能更好的灵活的实现!
答!: 1:
帮顶。
答!: 2:
定义好权限和角色的数据表,做到足够细化,然后用acegi框架控制权限验证.
acegi是非侵入非的,非常容易套到SSH架构中,其基本原理也是servlet filter和springAOP,比较容易理解.

相关JAVA教程:
请教一个dom4j解析xml的问题
新手请教:为什么我的validator框架不验证?
大家帮我看看,在spring环境下做单元测试怎么通不过呀,错误日志
客户端调用Sun Application Server 的EJB问题
myeclipse中启动jboss错误!
APPFUSE中的问题
一个长久未解决的问题
如何从资源文件给Struts的标签初值?
一个建表的问题
调试roller2.3版的blog问题
eclipse+weblogic 开发j2ee时怎么生成ejb-jar.xml等描述符文件?
Hibernate+Struts 使用PropertyUtils拷贝Form表单对象至VO类 保存至数据库时Date类型无法转换?