[英]Spring security roles and permissions
我有一个使用Spring MVC和Spring Security的项目。
角色:
ROLE_USER and ROLE_ADMIN
权限:
READ_PRIVILEGE, WRITE_PRIVILEGE
在角色和权限之间:
ROLE_ADMIN -> READ_PRIVILEGE AND WRITE_PRIVILEGE
ROLE_USER -> READ_PRIVILEGE
接下来的情况是:
我有一个控制器,我想用注释保护操作
@PreAuthorize("hasRole('ROLE_ADMIN')")
像这样:
@RequestMapping(value = "/admin/usersAndRoles", method = RequestMethod.GET, produces = "application/json")
@PreAuthorize("hasRole('ROLE_ADMIN')")
public @ResponseBody String usersAndRoles(HttpServletRequest request) throws IOException
但是注释不起作用,但是如果我将代码更改为类似的代码就可以了:
@RequestMapping(value = "/admin/usersAndRoles", method = RequestMethod.GET, produces = "application/json")
@PreAuthorize("hasRole('WRITE_PRIVILEGE')")
public @ResponseBody String usersAndRoles(HttpServletRequest request) throws IOException
有人可以给我提示吗? 我不想使用权限来限制操作,我更喜欢角色限制。
提前致谢。
您如何配置权限和角色?
默认情况下, hasRole("role")
会检查“ role”是否在经过身份验证的用户的GrantedAuthorities中,因此只要您在其中具有角色,它就应该起作用。
也许您将您的权限用作GrantedAuthorities?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.