SpringBoot Security 解决 X-Frame-Options 问题

  |   0 评论   |   0 浏览

问题由来

我前端使用 iframe 布局,后台用 了 SpringSecurity 来进行权限管理,当在 iframe 中访问页面时出现以下情况

这个主要是因为 Spring boot 默认为了安全, 默认不让网页支持嵌入, 帮助用户对抗点击劫持

解决办法

在 Spring Security 配置中加入下面一行代码即可

@Override
    protected void configure(HttpSecurity http) throws Exception {
        /**
         * 解决 X-Frame-Options 选项设置为 DENY 的问题。
         *          X-Frame-Options 如何设置为 DENY ,那么该页面是无法在 iframe 中显示的
         *          X-Frame-Options 包含三种方式
         *          DENY
         *         表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。
         *         SAMEORIGIN
         *         表示该页面可以在相同域名页面的 frame 中展示。
         *         ALLOW-FROM uri
         *         表示该页面可以在指定来源的 frame 中展示。
         *
         *   这里把 X-Frame-Options 设置成 SAMEORIGIN
         */
        http.headers().frameOptions().sameOrigin();
    }

标题:SpringBoot Security 解决 X-Frame-Options 问题
作者:zh847707713
地址:http://lovehao.cn/articles/2020/05/19/1589872077376.html