@preauthorize如何在表达式中添加参数

cigdeys3  于 2021-07-23  发布在  Java
关注(0)|答案(0)|浏览(261)

也许有人有主意
我有一个抽象控制器提供我需要的端点。
在@preauthorized中,我将执行检查用户是否具有所需的角色。问题是我只有一个函数,我想检查哪个端点当前被评估。
代码如下:

public abstract class CoreController<T> {

    private final JpaRepository repository;
    private final CoreService service;
    public String endpoint;
    private String view;

    public CoreController(CoreService service, JpaRepository repository, String endpoint, String view) {
        this.service=service;
        this.repository = repository;
        this.endpoint=endpoint;
        this.view=view;
    }

    @PreAuthorize("@checkAccess.isAllowedToGet(#endpoint)")
    @RequestMapping(method = RequestMethod.GET, value = "/get")
    public ResponseEntity<CrudPage<Map<String, Object>>> get(CoreCriteria criteria) {
        criteria.setView(view);
        CrudPage<Map<String, Object>> data = service.getPage(criteria);
        return ResponseEntity.ok(data);
    }

问题是调用函数时端点总是空的。我应该如何更改表达式以使其生效。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题