`
kjj
  • 浏览: 173459 次
  • 性别: Icon_minigender_1
  • 来自: 陕西
社区版块
存档分类
最新评论

Acegi 权限控制一例,我哭晕..............

阅读更多
汗,为了做birtxml数据源,煞费心机,捏造了上篇的xml数据源后,沾沾自喜,不料世事难料,人算不如天算
这是action
   <package name="birtdatasource" extends="xwork-default" namespace="/birtdatasource/xml">
       <action name="armrptxml" class="armmonthreporter" 
		   method="doStream">
		   <result type="stream">
		        <param name="contentType">text/xml</param>
                <param name="inputName">xmlStream</param>
                <!-- 
                <param name="contentDisposition">inline;filename=data.xml</param>
                 -->
                <param name="bufferSize">4096</param>
		   </result>
		</action>
    </package>

这是acegi spring配置
   <property name="objectDefinitionSource">
		<!-- IS_AUTHENTICATED_ANONYMOUSLY -->
			<value><![CDATA[
				CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
				PATTERN_TYPE_APACHE_ANT
				/css/**=ROLE_SUPERVISOR,ROLE_USER,ROLE_ADMIN,ROLE_VIEWER,ROLE_LEADER
				/javascript/**=ROLE_ANONYMOUS,ROLE_SUPERVISOR,ROLE_VIEWER,ROLE_LEADER
				/dwr/interface/**=ROLE_SUPERVISOR,ROLE_ANONYMOUS,ROLE_VIEWER,ROLE_LEADER
				/images/**=ROLE_SUPERVISOR,ROLE_USER,ROLE_ADMIN,ROLE_VIEWER,ROLE_LEADER
				/*.action*=ROLE_SUPERVISOR,ROLE_USER,ROLE_ADMIN,ROLE_VIEWER,ROLE_LEADER
				/jsp/**=ROLE_SUPERVISOR,ROLE_USER,ROLE_ADMIN,ROLE_VIEWER,ROLE_LEADER
				/**=ROLE_ANONYMOUS,ROLE_ADMIN,ROLE_VIEWER,ROLE_LEADER,ROLE_SUPERVISOR
				/birtdatasource/xml/armrptxml.action?*=ROLE_ANONYMOUS,ROLE_SUPERVISOR,ROLE_ADMIN,ROLE_VIEWER,ROLE_LEADER

			]]></value>
  </property>


   /armrptxml.action?*=ROLE_ANONYMOUS,ROLE_SUPERVISOR,ROLE_ADMIN,ROLE_VIEWER,ROLE_LEADER




加红加粗部分是原来 配置,actino放在根目录下后来配置了 namespace 如上
就这配置,死活过不去,每次都受到 accessdeinied 错误,转发到错误登录页
于是,下载acegi代码,编译,加入工程,debug,跟踪,就差重新实现voter了 我快发疯了,最后实在没办法了,灵机一动,为action配置了namespace,访问,估计要好,竟然ok了,我这个晕。
访问url 以前
引用

  http://host/stat/birtview.actoin?xmlDataUrl=http://host/stat/armrptxml.action?reporter.id=SDFUIORERE@$##IEDFDF


这种情况下,在用户登录并拥有此url的情况下,在浏览器里访问该url可以输出xml,但是
如果在代码中用URL来解析xml 跑异常 Access is Denied
换成 下面形式
引用

  http://host/stat/birtview.actoin?xmlDataUrl=http://host/stat/birtdatasource/xml/armrptxml.action?reporter.id=SDFUIORERE@$##IEDFDF

一切OK ,我晕,希望大家引以为戒!!我这个晕,休息去,太累了!!!
1
0
分享到:
评论

相关推荐

    Acegi 数据库配置安全策略 源代码及图解

    7. **用户权限管理**:标签中的“用户权限”表明,这个资源可能会介绍如何在Acegi中定义用户角色和权限,以及如何通过Acegi实现不同用户对不同资源的访问控制。 8. **UML图解**:`um`开头的文件可能是UML类图、序列...

    acegi 详细实例

    在 Java 应用开发中,Acegi 提供了一套强大的工具来管理用户权限和访问控制,使得开发者能够更专注于业务逻辑,而不是安全性问题。在这个“acegi 详细实例”中,我们将会探讨如何使用 Acegi 来实现应用程序的安全...

    acegi安全框架例子

    Acegi安全框架是Spring Framework的一个强大补充,专为应用程序安全设计。它提供了全面的身份验证、授权和服务保护功能,使得开发者可以轻松地在Spring应用中实现复杂的安全需求。本例将探讨Acegi安全框架的主要概念...

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

    以一个典型的Web应用为例,其权限控制系统需要能够处理用户登录认证、权限检查、安全拦截等多个方面。在用户登录时,Acegi安全框架可以负责用户身份的验证,比对用户提交的信息与安全数据库中的记录,确保用户身份的...

    Spring Security学习总结一

    随着业务的发展,权限验证的逻辑散布于系统的各个角落,形成了一种“切面”,但这种“切面”并未得到有效管理和隔离。 AOP(面向切面编程)和Spring Security的出现,正是为了解决这一问题。它们允许我们将系统级的...

    BBS 系统 设计 文档

    3. **版本管理工具:CVS** - CVS是一种源代码版本控制系统,它可以帮助团队有效地管理源代码的版本控制,追踪代码的变化历史。 4. **第三方支持框架** - 本系统使用了多个第三方框架和技术,包括但不限于: - **...

    银行业务整合struts,mvc

    Struts结合Spring Security(原名Acegi)等安全框架,可以实现用户角色分配、权限控制等功能。通过定义不同的角色,如管理员、普通用户等,可以限制用户访问特定的资源。Struts的ActionMapping可以在Action执行前...

    SSH框架实验教学管理研究

    - **定义**:Acegi是一个基于Spring框架的安全框架。 - **特点**:提供全面的安全服务,如认证、授权等。 - **应用场景**:在SSH框架中,Acegi被用于实现安全机制,确保用户请求经过认证和授权后才能访问受保护的...

Global site tag (gtag.js) - Google Analytics