如何暂时禁用Spring Web App中的Spring Security

时间:2015-06-18 17:31:54

标签: spring spring-mvc spring-security

首先,对于Spring来说,我是一个完整的菜鸟。我正在申请一位正在度假的同事来处理申请。他告诉我要保持安全,因为最后的方法还没有确定,只是开发应用程序的其余部分。

但是启用了安全性并阻止访问主网页。我查了几个文件,包括

Disable Spring Security from spring-security.xml file

Disable Basic Authentication while using Spring Security Java configuration

http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-security.html

http://docs.spring.io/spring-boot/docs/current/reference/html/howto-security.html

没有找到有效的答案。

我做了以下事情:

将index.html添加到< welcome-file-list>在web.xml中。这会将我引导到已经包含在我接手的包中的登录页面。所以,我想我可以简单地禁用安全性。

在spring security.xml中添加了属性security =“none”。现在我不再获取登录页面了。我得到一个空白页。

禁用web.xml

<!--     <filter> -->
<!--        <filter-name>springSecurityFilterChain</filter-name> -->
<!--        <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> -->
<!--    </filter> -->

<!--    <filter-mapping> -->
<!--        <filter-name>springSecurityFilterChain</filter-name> -->
<!--        <url-pattern>/*</url-pattern> -->
<!--    </filter-mapping>  -->

仍然是空白页。

我看到了很多其他的建议,但它假设了比我现在更多的Spring知识。

例如,在上面的第4个链接中,我看到:

  

如果你在任何地方用@EnableWebSecurity定义一个@Configuration   您的应用程序将关闭默认的webapp安全性   Spring Boot中的设置。

我不知道他们的意思。我假设这意味着将这些注释放在某个方法的某个地方,但我不能相信这可以在应用程序的任何java类中随处可见。有这样做的例子吗?

有人能指出我正确的方向吗?感谢。

3 个答案:

答案 0 :(得分:2)

在安全XML文件中注释掉<intercept-url pattern="" access="" />标记,并授予对所有页面的访问权限。这应该有用。

答案 1 :(得分:1)

这似乎有效(在spring-security.xml中)

<!--        <intercept-url pattern="/**" access="hasRole('ROLE_USER')" /> -->
        <intercept-url pattern="/**" access="permitAll" />

答案 2 :(得分:0)

检查你的web.xml或你的appContext.xml,找到spring security.xml bean的加载位置(它就像<import resource=../spring security.xml>)并注释掉它,同时检查从那里加载的bean禁用它,导致它可能重定向或其他什么