Spring安全@PostFilter与maxResults结合使用

时间:2011-11-25 10:01:29

标签: java spring-security acl

我正在使用Spring安全性来处理我的Web服务。我正在使用注释来指定安全条件。现在我面临以下问题。请考虑以下服务方法:

@Override
@PostFilter("hasPermission(filterObject, 'read')")
@Transactional(readOnly = true)
public List<UserDTO> listUsers(int firstResult, int maxResults, String orderBy, boolean ascending) {

//Retrieve users and put them in a collection
}

在调用方法之后,过滤后工作正常,但如果至少存在多个用户,则该方法的合同将返回大小为#maxResults的集合。我如何实现这一点,因为在调用方法后可能会过滤掉对象。当然我可以恢复到方法内的手动访问检查,但我认为可能会有更优雅的方式来做这个。

0 个答案:

没有答案