需要使用Spring Security向没有任何角色的用户授予访问权限。任何人必须如何授予进程身份验证才能访问任何URL。我可以通过这样的事情做到这一点,或者可能以其他方式做到这一点吗?
<http auto-config='true'>
<intercept-url pattern="/**" access="ALL" />
<intercept-url pattern="/login.jsp" filters="none" />
<form-login login-page="/login.jsp" />
</http>
答案 0 :(得分:0)
您可能正在寻找IS_AUTHENTICATED_FULLY或IS_AUTHENTICATED_REMEMBERED或IS_AUTHENTICATED_ANONYMOUSLY
还要检查http://www.acegisecurity.org/acegi-security/apidocs/org/acegisecurity/vote/AuthenticatedVoter.html
答案 1 :(得分:0)
实际上你只需要创建自己的AccessDecisionManager和你自己的AccessDecisionVoter并将它们传递到这样的块中:
<http .... access-decsion-manager="myAccessManager">
.....
</http>
<bean id="myAccessManager" class="org.springframework.security.vote.AffirmativeBased">
<property name="decisionVoters">
<list>
<bean id="myVoter" class=[some subclass of AccessDecisionVoter] />
</list>
</property>
</bean>
这不是100%的解决方案,但它应该让您开始走正确的道路。 Spring Security中的“auto-config”设置在后台创建了很多这些类,如果没有其他正确类的bean可以自动加载它们。