Make default username and password configurable

Closes gh-10963
This commit is contained in:
Madhura Bhave
2017-12-11 13:02:33 -08:00
parent e68d8a3f98
commit 47ed096981
33 changed files with 170 additions and 135 deletions

View File

@@ -22,12 +22,9 @@ import java.util.Map;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.security.StaticResourceRequest;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.core.userdetails.User;
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -76,15 +73,6 @@ public class SampleWebSecureApplication implements WebMvcConfigurer {
// @formatter:on
}
@Bean
public InMemoryUserDetailsManager InMemoryUserDetailsManager() {
return new InMemoryUserDetailsManager(
User.withDefaultPasswordEncoder().username("admin").password("admin")
.roles("ADMIN", "USER").build(),
User.withDefaultPasswordEncoder().username("user").password("user")
.roles("USER").build());
}
}
}

View File

@@ -1,4 +1,7 @@
spring.thymeleaf.cache: false
# demo only:
logging.level.org.springframework.security: INFO
logging.level.org.springframework.boot.actuate.audit.listener.AuditListener: DEBUG
logging.level.org.springframework.boot.actuate.audit.listener.AuditListener: DEBUG
spring.security.user.name=user
spring.security.user.password=password

View File

@@ -83,7 +83,7 @@ public class SampleSecureApplicationTests {
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
MultiValueMap<String, String> form = new LinkedMultiValueMap<>();
form.set("username", "user");
form.set("password", "user");
form.set("password", "password");
ResponseEntity<String> entity = this.restTemplate.exchange("/login",
HttpMethod.POST, new HttpEntity<>(form, headers), String.class);
assertThat(entity.getStatusCode()).isEqualTo(HttpStatus.FOUND);