在Spring Data REST中限制资源所有权

时间:2017-07-02 02:40:24

标签: java spring spring-data spring-data-rest

使用Spring Data REST,我有多对多的关系:

  • 具有一组任务的用户实体类:

    @ManyToMany(mappedBy = "users", fetch = FetchType.EAGER)
    private Set<TaskRecord> tasks;

  • 任务实体类一组User:

    @ManyToMany(cascade = {CascadeType.PERSIST, CascadeType.MERGE})
    @JoinTable(name = "task_user")
    private Set<User> users;

  • 连接两者的表格(task_user)(通过两列,task_iduser_id

我想限制操作,以便用户只能在用户是其所有者的情况下访问任务(即task_user中有该用户ID的任务ID的条目。)

我目前正在通过@HandleBeforeCreate@HandleBeforeSave事件处理程序实现POST和PUT。有没有办法使用@PreAuthorize或其他东西为任何和所有操作实现此目的?

0 个答案:

没有答案