【发布时间】:2018-04-19 23:57:39
【问题描述】:
我正在使用 Spring MVC 和 Hibernate。
假设我们有控制器动作
@GetMapping("/user/remove")
public String removeAction(@ModelAttribute(value = "user_id") User user, RedirectAttributes redirectAttributes) {
...
}
是否可以应用一些规则来检查用户是否可以删除该用户?
例如ROLE_ADMIN 角色的用户可以删除所有用户,ROLE_USER 角色的用户可以删除自己创建的用户。
第二个问题,当角色为 ROLE_USER 的用户列出所有用户时,是否可以在 Hibernate 级别过滤该列表,而无需遍历所有用户并检查谁创建了该用户?
最后一个问题。要删除操作,我正在传递 user_id。可以在不调用 UserService 的情况下从 DB 中检索该用户,如果所有权限都正常,那么希望该用户对象在该 removeAction 中可用。
【问题讨论】:
标签: java spring hibernate spring-mvc permissions