Spring security Spring Security 3.0-拦截URL-所有页面都需要身份验证,只有一个页面需要
我希望任何用户都能将自己的名字提交给志愿者表单,但只有管理员才能查看任何其他URL。不幸的是,我似乎无法正确理解这一点。我的resources.xml如下:Spring security Spring Security 3.0-拦截URL-所有页面都需要身份验证,只有一个页面需要,spring-security,Spring Security,我希望任何用户都能将自己的名字提交给志愿者表单,但只有管理员才能查看任何其他URL。不幸的是,我似乎无法正确理解这一点。我的resources.xml如下: <?xml version="1.0" encoding="UTF-8"?> <beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:beans="http://www.springframework.org/schema/
<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd">
<http realm = "BumBumTrain Personnel list requires you to login" auto-config="true" use-expressions="true">
<http-basic/>
<intercept-url pattern="/person/volunteer*" access=""/>
<intercept-url pattern="/**" access="isAuthenticated()" />
</http>
<authentication-manager alias="authenticationManager">
<authentication-provider>
<user-service>
<user name="admin" password="admin" authorities="ROLE_ADMIN"/>
</user-service>
</authentication-provider>
</authentication-manager>
</beans:beans>
具体地说,我正试图通过以下方式实现我描述的访问设置:
<intercept-url pattern="/person/volunteer*" access=""/>
<intercept-url pattern="/**" access="isAuthenticated()" />
有人能描述一下如何使用截取url来实现我所描述的结果吗
谢谢
Gav
无论出于什么原因,在我需要的grails应用程序中
<intercept-url pattern="/person/volunteer/**" access="" filters="none"/>
<intercept-url pattern="/images/**" access="" filters="none"/>
<intercept-url pattern="/css/**" access="" filters="none"/>
<intercept-url pattern="/js/**" access="" filters="none"/>
<intercept-url pattern="/**" access="ROLE_ADMIN" />
要使这一点起作用,请注意第一条规则中的区别。什么东西不符合您的预期?出了什么问题 我认为access=”“并不是您所期望的。。。使用文档中的格式:
<intercept-url pattern="/login.jsp*" filters="none"/>
如果您不使用默认身份验证(确实如此),则需要添加WebExpressionVoter,因为您使用表达式将access=”“
替换为access=“permitAll”
,以使url无需身份验证即可访问。从spring 3.1开始,应使用
。