Spring Security中基于角色的访问

时间:2019-02-18 07:55:36

标签: spring-boot spring-security

@CrossOrigin(origins = "*", maxAge = 3600)

@RestController
public class RbacAccess {

@GetMapping("/api/user")
@PreAuthorize("hasRole('ROLE_USER')")
public String userAccess() {
    return ">>> User Contents!";
}

@GetMapping("/api/admin")
@PreAuthorize("hasRole('ROLE_ADMIN')")
public String adminAccess() {
    return ">>> Admin Contents";
}

}

我想保护我的方法

@PreAuthorize("hasRole('ROLE_USER')") 
public String userAccess() { 
    return ">>> User Contents!";
} 

在这里,我希望用户登录后将动态@PreAuthorize("hasRole('ROLE_USER')")转换为@PreAuthorize("hasRole(DynamicRome )"),无论角色是ADMIN还是User。我不想对其进行硬编码。

我的表是:

  • 用户:id,用户名,电子邮件,密码
  • 角色:id,role_name
  • user_role:id,user_id,role_id
  • group:group_id,group_name
  • 角色组:id,角色ID,组ID

我想保护我的方法

@PreAuthorize("hasRole('ROLE_USER')") 
public String userAccess() { 
    return ">>> User Contents!"; 
}

在这里,我希望用户登录后将动态@PreAuthorize("hasRole('ROLE_USER')")转换为@PreAuthorize("hasRole(DynamicRome )"),无论角色是ADMIN还是User。我不想对其进行硬编码。谢谢。

0 个答案:

没有答案