我的原则是一个“foo”的实例,它有一个“bars”的集合。每个 'bar' 都有一个我想与作为请求的资源传递的 'id' 匹配的 id。我可以在 Spring SpEL 中执行以下操作吗?如果是这样,怎么办?
示例(伪语法;因为我不知道正确的方法,这就是我在这里的原因)
@PreAuthorize("principal.transactions.contains(instance where dto.transactionId == instance.id")")
public SomeResponse processTransaction(RequestDto dto) {
...
}
基本上相当于这个
for(Transaction t : principal.transactions){
if(t.getId() == dto.getTransactionId())
return true;
}
return false;