簡體   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