upgrade to spring boot 2

This commit is contained in:
DOHA 2018-07-09 18:43:55 +03:00
parent 41b847381b
commit 9b27ab5754
14 changed files with 60 additions and 36 deletions

View File

@ -9,10 +9,10 @@
<packaging>pom</packaging> <packaging>pom</packaging>
<parent> <parent>
<artifactId>parent-boot-1</artifactId> <groupId>org.springframework.boot</groupId>
<groupId>com.baeldung</groupId> <artifactId>spring-boot-starter-parent</artifactId>
<version>0.0.1-SNAPSHOT</version> <version>2.0.3.RELEASE</version>
<relativePath>../parent-boot-1</relativePath> <relativePath/>
</parent> </parent>
<modules> <modules>
@ -22,7 +22,24 @@
</modules> </modules>
<properties> <properties>
<rest-assured.version>3.0.1</rest-assured.version> <rest-assured.version>3.1.0</rest-assured.version>
<oauth.version>2.3.3.RELEASE</oauth.version>
<oauth-auto.version>2.0.1.RELEASE</oauth-auto.version>
</properties> </properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project> </project>

View File

@ -21,6 +21,7 @@
<dependency> <dependency>
<groupId>org.springframework.security.oauth</groupId> <groupId>org.springframework.security.oauth</groupId>
<artifactId>spring-security-oauth2</artifactId> <artifactId>spring-security-oauth2</artifactId>
<version>${oauth.version}</version>
</dependency> </dependency>
</dependencies> </dependencies>

View File

@ -2,18 +2,19 @@ package org.baeldung.config;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.oauth2.config.annotation.configurers.ClientDetailsServiceConfigurer; import org.springframework.security.oauth2.config.annotation.configurers.ClientDetailsServiceConfigurer;
import org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerConfigurerAdapter; import org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerConfigurerAdapter;
import org.springframework.security.oauth2.config.annotation.web.configuration.EnableAuthorizationServer; import org.springframework.security.oauth2.config.annotation.web.configuration.EnableAuthorizationServer;
import org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerEndpointsConfigurer;
import org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerSecurityConfigurer; import org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerSecurityConfigurer;
@Configuration @Configuration
@EnableAuthorizationServer @EnableAuthorizationServer
public class AuthServerConfig extends AuthorizationServerConfigurerAdapter { public class AuthServerConfig extends AuthorizationServerConfigurerAdapter {
@Autowired @Autowired
private AuthenticationManager authenticationManager; private BCryptPasswordEncoder passwordEncoder;
@Override @Override
public void configure(final AuthorizationServerSecurityConfigurer oauthServer) throws Exception { public void configure(final AuthorizationServerSecurityConfigurer oauthServer) throws Exception {
@ -25,17 +26,14 @@ public class AuthServerConfig extends AuthorizationServerConfigurerAdapter {
public void configure(final ClientDetailsServiceConfigurer clients) throws Exception { public void configure(final ClientDetailsServiceConfigurer clients) throws Exception {
clients.inMemory() clients.inMemory()
.withClient("SampleClientId") .withClient("SampleClientId")
.secret("secret") .secret(passwordEncoder.encode("secret"))
.authorizedGrantTypes("authorization_code") .authorizedGrantTypes("authorization_code")
.scopes("user_info") .scopes("user_info")
.autoApprove(true) .autoApprove(true)
.redirectUris("http://localhost:8082/ui/login","http://localhost:8083/ui2/login")
// .accessTokenValiditySeconds(3600) // .accessTokenValiditySeconds(3600)
; // 1 hour ; // 1 hour
} }
@Override
public void configure(final AuthorizationServerEndpointsConfigurer endpoints) throws Exception {
endpoints.authenticationManager(authenticationManager);
}
} }

View File

@ -2,7 +2,7 @@ package org.baeldung.config;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.support.SpringBootServletInitializer; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.security.oauth2.config.annotation.web.configuration.EnableResourceServer; import org.springframework.security.oauth2.config.annotation.web.configuration.EnableResourceServer;
@SpringBootApplication @SpringBootApplication

View File

@ -1,18 +1,17 @@
package org.baeldung.config; 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.context.annotation.Configuration;
import org.springframework.security.authentication.AuthenticationManager; import org.springframework.core.annotation.Order;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; 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.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
@Configuration @Configuration
@Order(1)
public class SecurityConfig extends WebSecurityConfigurerAdapter { public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private AuthenticationManager authenticationManager;
@Override @Override
protected void configure(HttpSecurity http) throws Exception { // @formatter:off protected void configure(HttpSecurity http) throws Exception { // @formatter:off
http.requestMatchers() http.requestMatchers()
@ -28,11 +27,14 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override @Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception { // @formatter:off protected void configure(AuthenticationManagerBuilder auth) throws Exception { // @formatter:off
auth.parentAuthenticationManager(authenticationManager) auth.inMemoryAuthentication()
.inMemoryAuthentication()
.withUser("john") .withUser("john")
.password("123") .password(passwordEncoder().encode("123"))
.roles("USER"); .roles("USER");
} // @formatter:on } // @formatter:on
@Bean
public BCryptPasswordEncoder passwordEncoder(){
return new BCryptPasswordEncoder();
}
} }

View File

@ -1,4 +1,3 @@
server.port=8081 server.port=8081
server.context-path=/auth server.servlet.context-path=/auth
security.basic.enabled=false
#logging.level.org.springframework=DEBUG #logging.level.org.springframework=DEBUG

View File

@ -25,8 +25,9 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.security.oauth</groupId> <groupId>org.springframework.security.oauth.boot</groupId>
<artifactId>spring-security-oauth2</artifactId> <artifactId>spring-security-oauth2-autoconfigure</artifactId>
<version>${oauth-auto.version}</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -2,7 +2,7 @@ package org.baeldung.config;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.support.SpringBootServletInitializer; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.web.context.request.RequestContextListener; import org.springframework.web.context.request.RequestContextListener;

View File

@ -5,6 +5,7 @@ import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
@EnableOAuth2Sso @EnableOAuth2Sso
@Configuration @Configuration
public class UiSecurityConfig extends WebSecurityConfigurerAdapter { public class UiSecurityConfig extends WebSecurityConfigurerAdapter {

View File

@ -1,5 +1,6 @@
server: server:
port: 8083 port: 8083
servlet:
context-path: /ui2 context-path: /ui2
session: session:
cookie: cookie:

View File

@ -25,10 +25,12 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.security.oauth</groupId> <groupId>org.springframework.security.oauth.boot</groupId>
<artifactId>spring-security-oauth2</artifactId> <artifactId>spring-security-oauth2-autoconfigure</artifactId>
<version>${oauth-auto.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId> <artifactId>spring-boot-starter-thymeleaf</artifactId>

View File

@ -2,7 +2,7 @@ package org.baeldung.config;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.support.SpringBootServletInitializer; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.web.context.request.RequestContextListener; import org.springframework.web.context.request.RequestContextListener;

View File

@ -5,6 +5,7 @@ import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
@EnableOAuth2Sso @EnableOAuth2Sso
@Configuration @Configuration
public class UiSecurityConfig extends WebSecurityConfigurerAdapter { public class UiSecurityConfig extends WebSecurityConfigurerAdapter {

View File

@ -1,5 +1,6 @@
server: server:
port: 8082 port: 8082
servlet:
context-path: /ui context-path: /ui
session: session:
cookie: cookie: