Spring Security将主体信息与请求参数匹配

时间:2018-08-08 15:03:36

标签: spring spring-mvc security spring-security spring-security-oauth2

所以我试图仅使用PreFilter来验证我的端点而没有IF和类似的东西

Guid

我的问题是使PreFilter起作用,或者实际上是将经过身份验证的主体的userId与path变量进行匹配,以便每个用户只能请求自己的书籍。

是的,我知道我可以删除path变量,并且只需在方法内部执行principal.getUserId(),但这意味着如果用户是admin,则需要有一个if。

1 个答案:

答案 0 :(得分:0)

好的,经过几次尝试,我终于找到了解决方法。如果有人感兴趣:     @PreAuthorize(“ hasRole('ADMIN')或#userId == principal.userId”)

这样,如果您是管理员,则可以获取任何用户的书;如果您是用户,则只能获取自己的书。