如何禁用 spring-security 登录屏幕?

新手上路,请多包涵

我正在使用 spring-boot-starter-security 依赖项,以利用 spring-security 附带的几个类。但是因为我想将它集成到现有的 vaadin 应用程序中,我只想使用这些类,而不是 spring 的默认登录/身份验证屏幕。

如何禁用此屏幕?

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

 @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);
        }
}

那么,我可以做些什么来禁用登录屏幕,但可以使用 spring 安全功能?

原文由 membersound 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.6k
2 个回答

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

原文由 Andrei Stefan 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以像这样使用基于 Java 的配置:

 @Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

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

如果它自动刷新,请重新启动您的应用程序。

原文由 noobdev 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题