2
基本上我有一個允許普通用戶使用的控制器,並且我希望管理員可以通過不同的路徑訪問同一個控制器。 所以,我想這會工作:彈出覆蓋子類中的@PreAuthorize註釋
@RestController
@PreAuthorize("hasRole('USER')")
@RequestMapping(value = "/user")
public class UserController {
@RequestMapping(value = "/name", method = RequestMethod.GET)
public String getName() {
return service.getCurrentUserName();
}
}
@RestController
@PreAuthorize("hasRole('ADMIN')")
@RequestMapping(value = "/admin")
public class UserController extends UserController{
}
但我可以與用戶角色同時調用/用戶/名稱和/管理/名稱。所以它會忽略子類上的PreAuthorize註釋。
有沒有什麼方法可以重新使用UserController方法,只需向它們添加一個不同的安全PreAuthorize而不用爲Admin重寫它們?
@danial post編輯 – 2014-09-02 14:34:35