博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
FilterSecurityInterceptor can't match URL parameters
阅读量:6323 次
发布时间:2019-06-22

本文共 694 字,大约阅读时间需要 2 分钟。

FilterSecurityInterceptor can't match URL parameters
2008年04月08日 星期二 下午 7:25

      对于这个问题,一直困扰了我很久 ,之前对acegi的objectDefinitionSource的表达式一直使用Apache Ant Paths的方式进行处理,这种处理方式对含有“=”的表达式不能解析,这样导致在对url的控制力度上只能停留在Action层面,对于Action的parameters不能进行权限控制。

      后来看过acegi的源代码,发现Acegi并未为objectDefinitionSource显式的注册编辑器,通过java.beans下的 PropertyEditorManager, 根据“类型名称+Editor”来查找属性相应的编辑器机制,查到相应的编辑器为FilterInvocationDefinitionSourceEditor,Acegi实例化了FilterInvocationDefinitionSourceEditor,并调用它完成后续的读取配置并给属性赋值的工作。在PropertyEditorSupport的setAsText方法中可以通过正则表达式方式匹配。所以在对前面遇到的问题上可以通过使用正则表达式规则处理所有的表达式。将上面的“=”符号替换为“\x3D”即可。这样就可以控制到Action的parameters层面,再加上MethodSecurityInterceptor的控制,已经可以实现几乎所有的权限控制。
     希望以上能对同样为此问题烦恼的java developer有帮助!^_^

转载地址:http://hjcaa.baihongyu.com/

你可能感兴趣的文章
SpringBoot 实战 (二) | 第一个 SpringBoot 工程详解
查看>>
Go goroutine理解
查看>>
IDE 插件新版本发布,开发效率 “biu” 起来了
查看>>
理解环境变量 JAVA_TOOL_OPTIONS
查看>>
Java Bridge Pattern(桥接模式)
查看>>
看大牛是如何使用和理解线程池
查看>>
sql server 索引阐述系列八 统计信息
查看>>
c# Request对象(13)
查看>>
USB,蓝牙,以太网,还是WIFI?
查看>>
阿里云服务器更改时区为utc
查看>>
APP测试流程和测试点
查看>>
ansible实战
查看>>
PowerShell 远程管理之启用和执行命令
查看>>
mysql安装错误
查看>>
马斯克:我并不讨厌苹果 Apple Watch还不成熟
查看>>
更新WP Mango应用磁贴内容的3种方法
查看>>
win系统与linux系统之间文件备份
查看>>
PHP中实现函数重载
查看>>
白宫电子邮件系统疑被黑:第一夫人护照信息被曝光
查看>>
惠州智慧城市建设提速 时空信息云平台争取明年投入运营
查看>>