У меня есть простое выражение в аннотации @PreAuthorize:
@PreAuthorize("#userId == authentication.principal.id")
Но ответ таков:
Не удалось оценить выражение '#userId == authentication.principal.id '
Вот подпись метода:
fun updateGeneralProfileInfo(@PathVariable userId: Long, authentication: Authentication)
(Kotlin)
В режиме отладки я увидел, что во время выполнения authentication.principal
является объектом UserPrincipal и содержит поле id
.
Кстати, выражение #userId == authentication.principal
работает (конечно, оно всегда возвращает false, но по крайней мере не исключение)
Hep, пожалуйста!