Как создать аннотацию интерфейса, которая реализует PreAuthorize, которая использует значения из интерфейса - PullRequest
1 голос
/ 09 июля 2020

Я создал свой собственный гибкий интерфейс разрешений, который реализует @PreAuthorize аннотацию

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@PreAuthorize("@securityService.hasPermission(authentication.principal, " + "@HasUserPermission.firstType(), " + "@HasUserPermission.secondType()")
public @interface HasUserPermission {
    String firstType() default "";
    String secondType() default "";

}

Я ожидаю, что hasPermission будет использовать firstType() и secondType() значения @interface для вызова ' hasPermission ', но ничего не делайте, и я не нашел решения или идеи для своей проблемы. Как я могу передать firstType() и secondType() на @PreAuthorize? Возможно ли это?

...