2011-01-29 45 views
0

我试图设置安全约束反向。我想说的是,除了我指定的以外,所有页面都需要登录。我用:设置反向安全约束

<security-constraint> 
    <web-resource-collection> 
     <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>*</role-name> 
    </auth-constraint> 
</security-constraint> 

但我不知道该怎么说index.jsp不需要登录。

回答

2

简单的答案是,你不能做到这一点使用web.xml文件(可以说是一件好事,因为安全机制最好保持尽可能简单)。正如@Johan所说,保护一些网址格式,例如/secure/*/app/*,并将所有网页放在那里。

0

要么将​​所有安全页面/secure并将您的安全筛选器配置为/secure/*,要么在您的过滤配置中创建一个排除项。下面的示例是基于Spring的安全性:

<http auto-config='true'> 
    <intercept-url pattern="/index.jsp*" filters="none"/> 
</http> 
+0

虽然这是100%正确的,但是OP询问web.xml部署描述符,并没有指出他们正在使用spring-security。由于web.xml约束是在容器级别执行的,因此这两种方法也不容易混合。 – 2011-01-30 13:36:50