From 7e0bf584a1dedab7e9d038c20e1f22a8299d7891 Mon Sep 17 00:00:00 2001 From: oreva Date: Thu, 17 Nov 2016 13:36:07 +0200 Subject: [PATCH] Java-based configuration implemented. --- .../CustomWebSecurityConfigurerAdapter.java | 17 -------- .../spring/SecSecurityConfigJava.java | 40 +++++++++++++++++++ ...yConfig.java => SecSecurityConfigXML.java} | 10 ++--- 3 files changed, 45 insertions(+), 22 deletions(-) delete mode 100644 spring-security-basic-auth/src/main/java/org/baeldung/security/filter/configuration/CustomWebSecurityConfigurerAdapter.java create mode 100644 spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfigJava.java rename spring-security-basic-auth/src/main/java/org/baeldung/spring/{SecSecurityConfig.java => SecSecurityConfigXML.java} (56%) diff --git a/spring-security-basic-auth/src/main/java/org/baeldung/security/filter/configuration/CustomWebSecurityConfigurerAdapter.java b/spring-security-basic-auth/src/main/java/org/baeldung/security/filter/configuration/CustomWebSecurityConfigurerAdapter.java deleted file mode 100644 index 468c99cb2a..0000000000 --- a/spring-security-basic-auth/src/main/java/org/baeldung/security/filter/configuration/CustomWebSecurityConfigurerAdapter.java +++ /dev/null @@ -1,17 +0,0 @@ -package org.baeldung.security.filter.configuration; - -import org.baeldung.security.filter.CustomFilter; -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.web.authentication.www.BasicAuthenticationFilter; - -@Configuration -public class CustomWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdapter { - - @Override - protected void configure(HttpSecurity http) throws Exception { - http.addFilterAfter(new CustomFilter(), BasicAuthenticationFilter.class); - } - -} diff --git a/spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfigJava.java b/spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfigJava.java new file mode 100644 index 0000000000..8e88c3f099 --- /dev/null +++ b/spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfigJava.java @@ -0,0 +1,40 @@ +package org.baeldung.spring; + +import org.baeldung.security.basic.MyBasicAuthenticationEntryPoint; +import org.baeldung.security.filter.CustomFilter; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +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.web.authentication.www.BasicAuthenticationFilter; + +@Configuration +@EnableWebSecurity +@ComponentScan("org.baeldung.security") +public class SecSecurityConfigJava extends WebSecurityConfigurerAdapter { + @Autowired + private MyBasicAuthenticationEntryPoint authenticationEntryPoint; + + @Autowired + public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { + auth + .inMemoryAuthentication() + .withUser("user1").password("user1Pass").authorities("ROLE_USER"); + } + + @Override + protected void configure(HttpSecurity http) throws Exception { + http.authorizeRequests() + .antMatchers("/securityNone").permitAll() + .anyRequest().authenticated() + .and() + .httpBasic() + .authenticationEntryPoint(authenticationEntryPoint); + + http.addFilterAfter(new CustomFilter(), BasicAuthenticationFilter.class); + } + +} diff --git a/spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfig.java b/spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfigXML.java similarity index 56% rename from spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfig.java rename to spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfigXML.java index 4ce80dab9f..a080b624f6 100644 --- a/spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfig.java +++ b/spring-security-basic-auth/src/main/java/org/baeldung/spring/SecSecurityConfigXML.java @@ -4,12 +4,12 @@ import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.ImportResource; -@Configuration -@ImportResource({ "classpath:webSecurityConfig.xml" }) -@ComponentScan("org.baeldung.security") -public class SecSecurityConfig { +//@Configuration +//@ImportResource({ "classpath:webSecurityConfig.xml" }) +//@ComponentScan("org.baeldung.security") +public class SecSecurityConfigXML { - public SecSecurityConfig() { + public SecSecurityConfigXML() { super(); }