如何禁用弹簧安全登录屏幕?

我正在使用依赖关系,以利用附带的几个类。但是,由于我想将其集成到现有应用程序中,因此我只想使用这些类,而不是spring的默认登录/身份验证屏幕。spring-boot-starter-securityspring-securityvaadin

如何禁用此屏幕?

我无法通过扩展为我的主要入门类来进行任何配置。此外,vaadin应用程序基本上一直运行在同一URL路径上,并使用内部导航。WebSecurityConfigurerAdapterextends SpringBootServletInitializer

@EnableAutoConfiguration
public class MyApp extends SpringBootServletInitializer { 

        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(MyApp.class);
        }

        public static void main(String[] args) {
            SpringApplication.run(MyApp.class, args);
        }
}

那么,我该怎么做才能禁用登录屏幕,但要利用弹簧安全功能呢?


答案 1

你可以使用基于java的配置,如下所示:

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity security) throws Exception
    {
     security.httpBasic().disable();
    }
}

,如果应用程序自动刷新,则重新启动应用程序。


答案 2

Spring Boot 中的默认安全性是 Basic。您可以通过设置 来禁用它。更多关于这个 这里这里.security.basic.enabled=false


推荐