我们刚刚从 2.0.8 迁移到Spring Security 3.0.8 (可以升级到 3.2.X 的最新版本,因为我们的核心spring库仍在 3.0.X 上,我们计划在业务允许时稍后升级)。
我知道我们现在有了用于保护方法的批注,例如@PreAuthorize
,@PostAuthorize
,@Secured
,@PreFilter
和@PostFilter
。
我了解@PreAuthorize
的用法,这确实很有意义。但是无法想到您曾经使用@PostAuthorize
或@PostFilter
注释的任何有效用例吗?
可以使用它的人给我解释一下使用它们的合理用例吗?
提前致谢!
最佳答案
@PostAuthorize
和@PostFilter
大多与ACL结合使用。如果返回了某些人无法访问的内容,则@PostAuthorize
会生成异常,而@PostFilter
会删除一个用户无法访问的对象(通常在返回元素集合时很有用)。