@ -19,18 +19,14 @@ package sample.ui.secure;
@@ -19,18 +19,14 @@ package sample.ui.secure;
import java.util.Date ;
import java.util.Map ;
import javax.sql.DataSource ;
import org.springframework.beans.factory.annotation.Autowired ;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration ;
import org.springframework.boot.autoconfigure.security.SecurityProperties ;
import org.springframework.boot.builder.SpringApplicationBuilder ;
import org.springframework.context.annotation.Bean ;
import org.springframework.context.annotation.ComponentScan ;
import org.springframework.core.Ordered ;
import org.springframework.context.annotation.Configuration ;
import org.springframework.core.annotation.Order ;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder ;
import org.springframework.security.config.annotation.authentication.configurers.GlobalAuthenticationConfigurerAdapter ;
import org.springframework.security.config.annotation.web.builders.HttpSecurity ;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter ;
import org.springframework.stereotype.Controller ;
@ -65,16 +61,7 @@ public class SampleWebSecureApplication extends WebMvcConfigurerAdapter {
@@ -65,16 +61,7 @@ public class SampleWebSecureApplication extends WebMvcConfigurerAdapter {
registry . addViewController ( "/login" ) . setViewName ( "login" ) ;
}
@Bean
public ApplicationSecurity applicationSecurity ( ) {
return new ApplicationSecurity ( ) ;
}
@Bean
public AuthenticationSecurity authenticationSecurity ( ) {
return new AuthenticationSecurity ( ) ;
}
@Configuration
@Order ( SecurityProperties . ACCESS_OVERRIDE_ORDER )
protected static class ApplicationSecurity extends WebSecurityConfigurerAdapter {
@ -86,20 +73,12 @@ public class SampleWebSecureApplication extends WebMvcConfigurerAdapter {
@@ -86,20 +73,12 @@ public class SampleWebSecureApplication extends WebMvcConfigurerAdapter {
http . authorizeRequests ( ) . anyRequest ( ) . fullyAuthenticated ( ) . and ( ) . formLogin ( )
. loginPage ( "/login" ) . failureUrl ( "/login?error" ) . permitAll ( ) ;
}
}
@Order ( Ordered . HIGHEST_PRECEDENCE + 10 )
protected static class AuthenticationSecurity extends
GlobalAuthenticationConfigurerAdapter {
@Autowired
private DataSource dataSource ;
@Override
public void init ( AuthenticationManagerBuilder auth ) throws Exception {
auth . jdbc Authentication( ) . dataSource ( this . dataSource ) . withUser ( "admin" )
. password ( "admin" ) . roles ( "ADMIN" , "USER" ) . and ( ) . withUser ( "user" )
. password ( "user" ) . roles ( "USER" ) ;
public void configure ( AuthenticationManagerBuilder auth ) throws Exception {
auth . inMemoryAuthentication ( ) . withUser ( "admin" ) . password ( "admin" )
. roles ( "ADMIN" , "USER" ) . and ( ) . withUser ( "user" ) . password ( "user" )
. roles ( "USER" ) ;
}
}