繁体   English   中英

Spring安全角色和权限

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM