【发布时间】:2015-10-23 20:21:47
【问题描述】:
我有以下问题, 如何防止用户使用 SpringSecurityCore 访问另一个用户?
例如,阻止学生访问其他学生的数据。当时两者具有相同的角色(角色学生) 如果我这样做 student/show/1 我可以查看和编辑数据。我要阻止它!
我可以使用 ACL 插件,使用 @PreAuthorize 标记,但它已被弃用,并且在 2.5.1 版本的 Grails 中出现错误。
跟在 ACL 中一样:只有 ADMIN 和登录的学生有访问权限。
@PreAuthorize("(hasRole('ROLE_ADMIN')) or (isAuthenticated()) and (principal.id==#studentInstance.id)")
【问题讨论】: