【发布时间】:2020-08-04 05:17:47
【问题描述】:
我在Jhipster默认生成的UserResourse.java中有如下方法:
@DeleteMapping("/users/{login:" + Constants.LOGIN_REGEX + "}")
@PreAuthorize("hasRole(\"" + AuthoritiesConstants.ADMIN + "\")")
@Transactional
public ResponseEntity<Void> deleteUser(@PathVariable String login) {
log.debug("REST request to delete User: {}", login);
userService.deleteUser(login);
return ResponseEntity.noContent().headers(HeaderUtil.createAlert(applicationName, "userManagement.deleted", login)).build();
}
如果要删除的用户具有特定角色,我想对数据库进行其他更改。我需要写一些类似的东西:
Optional<User> user = this.userService.findOneByLogin(login);
if(user.get().hasRole("ROLE_USER"){
// do something
}
User 类有一个属性Set<Authority> authorities,我想我可以用它来检查用户的角色,但我不知道该怎么做。有人可以帮助我吗?
【问题讨论】:
标签: java spring spring-security jhipster roles