diff --git a/spring-security-core/pom.xml b/spring-security-core/pom.xml
index 41dea087d3..b144357e25 100644
--- a/spring-security-core/pom.xml
+++ b/spring-security-core/pom.xml
@@ -9,10 +9,10 @@
war
- parent-boot-1
+ parent-boot-2
com.baeldung
0.0.1-SNAPSHOT
- ../parent-boot-1
+ ../parent-boot-2
@@ -36,6 +36,10 @@
org.springframework.boot
spring-boot-starter-actuator
+
+ org.springframework.boot
+ spring-boot-starter-web
+
com.h2database
h2
diff --git a/spring-security-core/src/main/java/org/baeldung/app/App.java b/spring-security-core/src/main/java/org/baeldung/app/App.java
index db0c9135c4..bf719b3b12 100644
--- a/spring-security-core/src/main/java/org/baeldung/app/App.java
+++ b/spring-security-core/src/main/java/org/baeldung/app/App.java
@@ -5,7 +5,7 @@ import javax.servlet.Filter;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.domain.EntityScan;
-import org.springframework.boot.web.support.SpringBootServletInitializer;
+import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.web.filter.DelegatingFilterProxy;
diff --git a/spring-security-core/src/main/java/org/baeldung/config/WebSecurityConfig.java b/spring-security-core/src/main/java/org/baeldung/config/WebSecurityConfig.java
index 0b6cd34f3e..df7c7d1611 100644
--- a/spring-security-core/src/main/java/org/baeldung/config/WebSecurityConfig.java
+++ b/spring-security-core/src/main/java/org/baeldung/config/WebSecurityConfig.java
@@ -1,12 +1,15 @@
package org.baeldung.config;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+import org.springframework.security.crypto.password.PasswordEncoder;
@Configuration
@EnableWebSecurity
@@ -21,8 +24,13 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication()
- .withUser("jim").password("jim").roles("USER", "ACTUATOR")
- .and().withUser("pam").password("pam").roles("USER")
- .and().withUser("michael").password("michael").roles("MANAGER");
+ .withUser("jim").password(passwordEncoder().encode("jim")).roles("USER", "ACTUATOR")
+ .and().withUser("pam").password(passwordEncoder().encode("pam")).roles("USER")
+ .and().withUser("michael").password(passwordEncoder().encode("michael")).roles("MANAGER");
+ }
+
+ @Bean
+ public PasswordEncoder passwordEncoder() {
+ return new BCryptPasswordEncoder();
}
}
diff --git a/spring-security-core/src/main/java/org/baeldung/service/TaskService.java b/spring-security-core/src/main/java/org/baeldung/service/TaskService.java
index 4a0dae3aac..4efa3b0294 100644
--- a/spring-security-core/src/main/java/org/baeldung/service/TaskService.java
+++ b/spring-security-core/src/main/java/org/baeldung/service/TaskService.java
@@ -20,7 +20,7 @@ public class TaskService {
@PreFilter("hasRole('MANAGER') or filterObject.assignee == authentication.name")
public Iterable save(Iterable entities) {
- return taskRepository.save(entities);
+ return taskRepository.saveAll(entities);
}
}
diff --git a/spring-security-core/src/main/resources/application.properties b/spring-security-core/src/main/resources/application.properties
new file mode 100644
index 0000000000..709574239b
--- /dev/null
+++ b/spring-security-core/src/main/resources/application.properties
@@ -0,0 +1 @@
+spring.main.allow-bean-definition-overriding=true
\ No newline at end of file