Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Devtool拒绝显示“;“我的uri”;在帧中,因为它设置为';X-Frame-Options';至';否认';_Java_Spring_Spring Security - Fatal编程技术网

Java Devtool拒绝显示“;“我的uri”;在帧中,因为它设置为';X-Frame-Options';至';否认';

Java Devtool拒绝显示“;“我的uri”;在帧中,因为它设置为';X-Frame-Options';至';否认';,java,spring,spring-security,Java,Spring,Spring Security,在我的JavaSpringMVCWeb应用程序中,我使用Hibernate、H2和JPA来存储数据。我正在尝试使用可视化数据库中的数据。我还使用,来保护我的应用程序 很遗憾,我无法加载该页面http://localhost:8080/h2-console/login.do?jsessionid=bcdfd8af18f9fa24d1874314750585bd应该显示我的数据库记录。 它在Chrome中抱怨: 拒绝显示'http://localhost:8080/h2-console/query.

在我的JavaSpringMVCWeb应用程序中,我使用Hibernate、H2和JPA来存储数据。我正在尝试使用可视化数据库中的数据。我还使用,来保护我的应用程序

很遗憾,我无法加载该页面
http://localhost:8080/h2-console/login.do?jsessionid=bcdfd8af18f9fa24d1874314750585bd
应该显示我的数据库记录。

它在Chrome中抱怨:

拒绝显示'http://localhost:8080/h2-console/query.jsp?jsessionid=bcdfd8af18f9fa24d1874314750585bd'在帧中,因为它将“X-frame-Options”设置为“DENY”。
在Firefox中,它抱怨:

X-Frame-Options拒绝加载:http://localhost:8080/h2-console/query.jsp?jsessionid=bcdfd8af18f9fa24d1874314750585bd不允许帧。
我对Spring Security的配置是:

@配置
静态类WebFormsSecurityConfigureAdapter扩展了WebSecurityConfigureAdapter{
@凌驾
受保护的无效配置(HttpSecurity http)引发异常{
http
.csrf().disable();
http
.授权请求()
.antMatchers(“/h2 console/**”).permitAll();
http
.授权请求()
.antMatchers(“/欢迎”).permitAll()
.antMatchers(“/account/**”).hasRole(“ADMIN”)
.antMatchers(“/account/**”).authenticated()
.及()
.formLogin()
.loginPage(“/login”).permitAll()
.defaultSuccessUrl(“/welcome”)
.及()
.logout().logoutRequestMatcher(新的AntPathRequestMatcher(“/logout”);
}
}

默认情况下,Spring Security禁用iframe中的渲染,请参阅:

20.1.5 X-Frame-Options

[……]

解决点击劫持问题的更现代方法是使用X-Frame-Options标题:

X-Frame-Options:拒绝
X-Frame-Options响应标题指示浏览器防止响应中包含此标题的任何站点在一个帧内呈现。默认情况下,Spring Security禁用iframe中的渲染

但您可以更改默认设置,请参见:

类似地,您可以使用以下命令自定义帧选项,以在Java配置中使用相同的源:

@EnableWebSecurity
公共类WebSecurityConfig扩展了WebSecurityConfigureAdapter{
@凌驾
受保护的无效配置(HttpSecurity http)引发异常{
http
// ...
.headers()
.frameOptions()
.sameOrigin();
}
}
如果要使用来自不同来源的帧,可以禁用HTTP标头,请参阅:

阻止将标头添加到响应中