从 web.xml 到 Spring 启动

Going from web.xml to Spring Boot

我正在升级现有的应用程序以使用 Spring 引导并从 web.xml 转移。 虽然我已经实现了功能,但我的 web.xml 中有一部分我无法弄清楚如何升级到 spring 引导。 (如果重要的话,我使用的是 1.5.6)

我web.xml的相关部分:

<security-constraint>
    <web-resource-collection>
        <web-resource-name>basic</web-resource-name>
        <url-pattern>*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>User</role-name>
    </auth-constraint>
</security-constraint>

<login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>myrealm</realm-name>
</login-config>

这是我的申请 class:

@SpringBootApplication
public class Application extends SpringBootServletInitializer{

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

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
         return builder.sources(Application.class);
    }
}

我无法确定如何使用基于代码的方法设置任何内容以反映安全约束或登录配置的功能。

如果有人有任何想法或可以指出正确的方向,我将不胜感激。几个小时的谷歌搜索和尝试解决方案让我一无所获。

查看 @EnableWebSecurityWebSecurityConfigurerAdapter

参见下面的示例:

@EnableWebSecurity
@Configuration
@Order(SecurityProperties.ACCESS_OVERRIDE_ORDER)
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .csrf().disable()
            .authorizeRequests()
            .antMatchers("/**").authenticated()
            .anyRequest()
            .permitAll()
            .and().httpBasic()
            .and().sessionManagement()
            .sessionCreationPolicy(SessionCreationPolicy.STATELESS);
    }
}