【发布时间】:2016-01-21 22:02:39
【问题描述】:
我正在尝试编写一个通用的 SecurePagingAndSorting 存储库,它将检查 CRUD 操作的安全性,以节省在所有 JPA 存储库中重复相同的 PreAuthorize(具有不同的权限)。
下面是一个简单的例子:
@NoRepositoryBean
public interface SecuredPagingAndSortingRepository<T, ID extends Serializable> extends PagingAndSortingRepository<T, ID> {
@Override
@PreAuthorize("hasPermission(#id, domainType, 'delete'))
void delete(ID id);
}
现在问题在于 domainType 参数,因为这是一个通用接口,它不能被硬编码。从派生自 SecurePagingRepository 的存储库中获取域类型的最佳方法是什么。
【问题讨论】:
标签: java spring spring-security spring-data spring-data-jpa