.net

.net

博客园 首页 新随笔 联系 订阅 管理

 spring Security下,X-Frame-Options默认为DENY,非Spring Security环境下,X-Frame-Options的默认大多也是DENY,这种情况下,浏览器拒绝当前页面加载任何Frame页面,设置含义如下:

    DENY:浏览器拒绝当前页面加载任何Frame页面
    SAMEORIGIN:frame页面的地址只能为同源域名下的页面
    ALLOW-FROM:origin为允许frame加载的页面地址。

    在tomcat8以后的版本中,可以通过在web.xml中定义filter设置X-Frame-Options,如下:

 

[java] view plain copy
 
 
  1. <filter>  
  2.     <filter-name>httpHeaderSecurity</filter-name>  
  3.     <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>  
  4.     <init-param>  
  5.         <param-name>antiClickJackingOption</param-name>  
  6.         <param-value>SAMEORIGIN</param-value>  
  7.     </init-param>  
  8.     <async-supported>true</async-supported>  
  9. </filter>  
  10.   
  11. <filter-mapping>  
  12.     <filter-name>httpHeaderSecurity</filter-name>  
  13.     <url-pattern>/*</url-pattern>  
  14. </filter-mapping>  

   方法二:

 

<security:http auto-config="true" use-expressions="true">
    <security:headers>
        <security:frame-options policy="SAMEORIGIN"/>
    </security:headers>


<http use-expressions="true" auto-config="true">
<form-login login-page="/login.do" always-use-default-target="false" />
<logout invalidate-session="true" logout-url="/logout.do" logout-success-url="/login.do"/>
<!-- 免登录验证,当session还在,防问是会自己登录 -->
<remember-me/>
<custom-filter before="FILTER_SECURITY_INTERCEPTOR" ref="myFilter"/>
<access-denied-handler ref="accessDeniedHandler"/>
<!-- 4.0以后默认打开csrf,不允许post,设置为不打开 -->
<csrf disabled="true"/>
<!-- 4.0以后X-Frame-Options的默认大多也是DENY,这种情况下,浏览器拒绝当前页面加载任何Frame页面 -->
<headers>
<frame-options policy="SAMEORIGIN"/>
</headers>
</http>



posted on 2018-01-10 21:08  航宇  阅读(4258)  评论(0编辑  收藏  举报