我正在使用具有 Spring 安全性的spring-EL

是否可以通过括号进行“复杂的”条件表达式?

@PreAuthorize("( hasRole('ROLE_USER') and ( isOwnerDocumentUUID( #docUuids ) ) or hasRole('ROLE_ADMIN')  ")

抛出一个java.lang.IllegalArgumentException:




@PreAuthorize("hasRole('ROLE_USER') and ( isOwnerDocumentUUID( #docUuids ) ")

被接受。

最佳答案

您还有一个额外的(,以下代码应该可以工作:

@PreAuthorize("( hasRole('ROLE_USER') and isOwnerDocumentUUID( #docUuids ) ) or hasRole('ROLE_ADMIN')  ")

10-08 00:08