我有一个允许更新用户信息的控制器
@RequestMapping(value = "user/{id}", method = RequestMethod.PUT)
@PreAuthorize("hasRole('ADMIN')")
public ResponseEntity<User> updateUser(@PathVariable("id") long id, @RequestBody User user) {
这样只有具有ADMIN角色的用户才能更新用户。我想以这种方式修改安全措施:
有一种方法可以使用spring secutiry标签来实现它吗?
由于 Esoni
答案 0 :(得分:0)
做这样的事
@PreAuthorize("#user.username==principal.username || hasRole('ADMIN')")
这将检查登录用户的用户名和更新用户名是否相同,或者用户是否具有角色admin。