Spring Security 禁止Vaadin Web安全连接到h2数据库

xzabzqsa  于 2022-11-29  发布在  Spring
关注(0)|答案(1)|浏览(184)

我下载了带有Spring安全性的Vaadin Starter。应用程序运行良好,我只是想查看一下数据库。h2-console可以通过localhost:8080/h2-console访问,我在日志中看到
H2控制台位于“/h2-console”。数据库位于“jdbc:h2:mem:83 bc 661 d-5c 93 -4354-acbc-1960 e90 e5406”
当我试图访问它并按下“连接”时,我得到和403。
我试过了

@Override
protected void configure(HttpSecurity http) throws Exception
{

    http.authorizeRequests()
        .antMatchers("/").permitAll()
        .antMatchers("/h2-console/**").permitAll();

    http.csrf().disable();
    http.headers().frameOptions().disable();

    super.configure(http);
    setLoginView(http, LoginView.class, LOGOUT_URL);

}

但有一个
super.configure(http);
如果没有这个超级调用,整个应用程序就会崩溃。
有没有办法使用所有的Vaadin的东西,并能够访问h2数据库?

pgx2nnw8

pgx2nnw81#

你必须注意配置的顺序。

@Override
protected void configure(HttpSecurity http) throws Exception
{

    http.authorizeRequests()
        .antMatchers("/").permitAll()
        .antMatchers("/h2-console/**").permitAll();

    super.configure(http);
    setLoginView(http, LoginView.class, LOGOUT_URL);

    http.csrf().disable();
    http.headers().frameOptions().disable();
}

相关问题