JiveJdon Community Forums
在线468人   首页   主题表   培训咨询   标签   精华   查搜   注册    登陆 RSS
首页 » 论坛 » 开源JdonFramework及其应用案例论坛
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表
???en_US.forumThreadNext.name??? 下一主题
Go 总共有 5 回复 / 1
 发表新帖子   回复该主题贴
banq

悄悄话
发表文章: 9528
注册时间: 2002年08月03日 17:08
基于组件方法级别授权访问 2005年11月01日 16:52 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
标签列表 中间件(33)      权限(95)     
授权访问(ACL)一般有以下几种:

1. Web资源,主要是以Web URL为特征,对Web资源的Jsp/Servlet 图片等目录下全部资源实现授权访问。

2. 组件资源,同一个组件的不同方法实现对资源进行不同性质的操作,每种操作方法都需要实现授权访问,例如:A角色可以实现帖子创建,但不能实现帖子删除。

3. 数据资源,保存在数据库中的某些数据只能让特定角色一些访问。比如某个帖子只能让积分超过多少的用户访问。

本文谈论了使用基于Web容器的和Jdon框架拦截器轻松实现前面两种方式。
http://www.jdon.com/jdonframework/acl.htm
dabb

悄悄话
发表文章: 233
注册时间: 2004年04月21日 15:02
Re: 基于组件方法级别授权访问 2005年11月11日 15:32 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
是阿。偶最近刚换了工作。
请教一下,我以前曾尝试过在Spring AOP里获取session context或则request context,但没有找到相关方法。看了jdon代码里AOP实现是可以获取到session context的,
ProxyMethodInvocation proxyMethodInvocation = (ProxyMethodInvocation) invocation;
TargetMetaRequest targetMetaRequest = proxyMethodInvocation.getTargetMetaRequest();
SessionContext sessionContext = targetMetaRequest.getSessionContext();

能大概说一下实现原理吗。我以前的 case是 打算在 业务层以AOP方式实现 操作的 log功能 ,但由于 不能在business layer获取 到 session context,就是取不到 user信息 ,所以 放弃 这种方式 。架构 是 Spring+struts,所以不能在 Struts里采用 Spring AOP.
banq

悄悄话
发表文章: 9528
注册时间: 2002年08月03日 17:08
Re: 基于组件方法级别授权访问 2005年11月12日 18:24 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
哈哈,Spring是没有此功能的,无法在业务层透明访问Session Context,你自己做,不过有个变通方法,需要花费一些力气:可以先把User放在ThreadLocal中,然后在Spring容器中获取。
dabb

悄悄话
发表文章: 233
注册时间: 2004年04月21日 15:02
Re: 基于组件方法级别授权访问 2005年11月14日 13:56 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
thanks
newpuresteel

悄悄话
发表文章: 3
注册时间: 2006年09月20日 17:13
re:基于组件方法级别授权访问 2007年10月30日 22:09 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
我不太喜欢把和业务逻辑相关的东西放到filter中来,filter是个全局的东西,这会增加系统调试的难道,很容易造成混乱。就好像我们编程时尽量不要用全局变量一样。 用户权限判断,我是用定义一些role的接口,然后用户都来实现这些接口。比如像admin这样的role的接口中定义了删除帖子的方法。
banq

悄悄话
发表文章: 9528
注册时间: 2002年08月03日 17:08
回复:re:基于组件方法级别授权访问 2007年10月31日 11:54 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
>我不太喜欢把和业务逻辑相关的东西放到filter中来
是的,业务层也可以使用filter的,所以没有必要将业务逻辑放到表现层的filter,但是有一个概念,权限用户方面有一半可以说不属于业务逻辑,JavaEE/J2EE标准已经把它写入规范,可以由框架或服务器实现,可以参见JiveJdon3源码,一部分权限如组件授权访问属于通用框架,推给服务器实现,而在MessageShell这样业务层中,实现了和具体对象数据有关的权限,分两部分。
这个主题有 5 回复 / 1Go
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表    返回页首返回页首
???en_US.forumThreadNext.name??? 下一主题
热点TAG: AOP cache 缓存 DDD EJB 集群 设计模式 Hibernate IOC JiveJdon OO RBAC Seam Spring Struts
正在读取,请等待...
google yahoo 新浪ViVi 365Key网摘 天极网摘 CSDN网摘 添加到百度搜藏 POCO网摘 博采网摘
查询本论坛内 回复超过的热门帖子
     回复该主题贴
标题
 
粗体 斜体 下划线 插入图片 插入代码 插入url链接 插入附件
内容
  每2分种自动备份发贴内容Ctrl-V粘贴取出,提问题前先查询标签列表

RSS 手机阅读 add to google add to yahoo
解惑之道在J道 ,打造中国最具影响力的的企业软件社区
OpenSource JIVEJDON v3.0 Powered by JdonFramework Code © 2002-08 jdon.com

anti spam