Spring启动和Spring Actuator - 禁用安全性

时间:2016-01-26 20:55:00

标签: spring spring-security spring-boot spring-boot-actuator

我在我的应用程序中使用spring-boot 1.3.1和spring-boot-actuator。我使用spring-boot-starter-parent作为pom.xml中的父级。

要禁用安全性,我在application.yml中添加了2个条目。

security:
  basic:
    enabled: false
management:
  security:
    enabled: false

它仍然没有禁用基本安全性。当我在本地tomcat中启动应用程序时,我在日志文件中看到默认密码。

3 个答案:

答案 0 :(得分:3)

基本安全性已禁用,但即使将security.basic.enabled设置为false,Spring Boot也会使用默认用户/密码配置身份验证管理器。 但是禁用了基本安全性。您可以重新配置authenticationManager以覆盖此行为,如下所示:

@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    @Autowired
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth
                .inMemoryAuthentication()
                    .withUser("me").password("secret").roles("ADMIN");
    }
} 

答案 1 :(得分:1)

您可以通过在application.yml -

中设置用户名/密码来停止spring boot以记录默认密码
security:
  basic:
    enabled: false
  user:
    name: user
    password: ****

答案 2 :(得分:0)

如果存在 Spring Security,您将需要添加一个自定义安全配置,以允许对端点进行未经身份验证的访问。类似的东西:

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

//....

@Override
    public void configure(WebSecurity web) throws Exception {
        web.ignoring().antMatchers(HttpMethod.GET, "/actuator/**");
        super.configure(web);
    }
}