spring boot如何添加安全约束的login-config tag2?

时间:2018-10-12 05:50:46

标签: spring spring-boot

在web.xml中,Web使用如下代码:

  <security-constraint>
      <web-resource-collection>
         <web-resource-name>HtmlAdaptor</web-resource-name>
         <url-pattern>/*</url-pattern>
         <http-method>POST</http-method>
      </web-resource-collection>
      <auth-constraint>
         <role-name>admin</role-name>
      </auth-constraint>
   </security-constraint>
   <login-config>
      <auth-method>BASIC</auth-method>
      <realm-name>ApplicationRealm</realm-name>
   </login-config>
   <security-role>
      <role-name>admin</role-name>
   </security-role>

在春季启动代码,如thant。但它似乎不起作用:

    @Bean
    public ConfigurableServletWebServerFactory webServerFactory() {
        TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
        factory.addContextCustomizers(context -> {
            SecurityConstraint constraint = new SecurityConstraint();
            SecurityCollection collection = new SecurityCollection();
            constraint.setAuthConstraint(true);
            collection.addPattern("/*");
            collection.setName("HtmlAdaptor");
            constraint.addCollection(collection);
            constraint.addAuthRole("admin");
            context.addConstraint(constraint);
            LoginConfig loginConfig = new LoginConfig();
            loginConfig.setAuthMethod("BASIC");
            loginConfig.setRealmName("ApplicationRealm");
            context.setLoginConfig(loginConfig);
            context.addSecurityRole("admin");
        });
        return factory;
    }

那么我该如何解决这个问题?我只想用Spring Boot代替传统的sevelet项目。

0 个答案:

没有答案