Spring安全性如何允许匿名访问大多数站点限制某些操作

时间:2012-05-25 02:09:31

标签: java spring java-ee spring-mvc spring-security

我希望与Stack Overflow有类似的行为,您可以匿名查看该网站的大部分内容,并且只需要某些操作的用户角色/身份验证。基本上匿名读取限制写入。 我希望我能做的是指定匿名访问我的security-config.xml并注释需要适当用户角色的各种方法。 配置:

<global-method-security secured-annotations="enabled" />

<http auto-config='true'>
    <intercept-url pattern="/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
    <http-basic />
</http>

方法声明

    @Secured("ROLE_USER")
    @RequestMapping(value = "/{estabID}", method = RequestMethod.GET)
    public ModelAndView getEstablishmentPage(@PathVariable String estabID) { .... }

但是,我没有提示使用此配置的基本身份验证凭据。如果我将配置中的访问属性更改为ROLE_USER,一切都按预期工作,我会看到一个auth挑战。

对于某些操作,默认情况下通过身份验证用户完成匿名访问的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

正如卢克·泰勒在评论中提到的那样,问题是通过this FAQ

来解决的