├── src ├── main │ ├── resources │ │ ├── application.properties │ │ └── application.yml │ └── java │ │ └── com │ │ └── javatechie │ │ └── spring │ │ └── cloud │ │ └── security │ │ └── api │ │ └── SpringCloudOauth2ExampleApplication.java └── test │ └── java │ └── com │ └── javatechie │ └── spring │ └── cloud │ └── security │ └── api │ └── SpringCloudOauth2ExampleApplicationTests.java ├── README.md └── pom.xml /src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # spring-boot-security-oauth2-example 2 | How to enable oauth2 in spring boot application 3 | -------------------------------------------------------------------------------- /src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | security: 2 | oauth2: 3 | client: 4 | clientId: 074d166086f317ed4ec9 5 | clientSecret: c50ca06ec6d44120cfd19afeccf7005fe86bcc72 6 | accessTokenUri: https://github.com/login/oauth/access_token 7 | userAuthorizationUri: https://github.com/login/oauth/authorize 8 | clientAuthenticationScheme: form 9 | resource: 10 | user-info-uri: https://api.github.com/user 11 | prefer-token-info: false -------------------------------------------------------------------------------- /src/test/java/com/javatechie/spring/cloud/security/api/SpringCloudOauth2ExampleApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.javatechie.spring.cloud.security.api; 2 | 3 | import org.junit.Test; 4 | import org.junit.runner.RunWith; 5 | import org.springframework.boot.test.context.SpringBootTest; 6 | import org.springframework.test.context.junit4.SpringRunner; 7 | 8 | @RunWith(SpringRunner.class) 9 | @SpringBootTest 10 | public class SpringCloudOauth2ExampleApplicationTests { 11 | 12 | @Test 13 | public void contextLoads() { 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/com/javatechie/spring/cloud/security/api/SpringCloudOauth2ExampleApplication.java: -------------------------------------------------------------------------------- 1 | package com.javatechie.spring.cloud.security.api; 2 | 3 | import java.security.Principal; 4 | 5 | import org.springframework.boot.SpringApplication; 6 | import org.springframework.boot.autoconfigure.SpringBootApplication; 7 | import org.springframework.boot.autoconfigure.security.oauth2.client.EnableOAuth2Sso; 8 | import org.springframework.web.bind.annotation.GetMapping; 9 | import org.springframework.web.bind.annotation.RestController; 10 | 11 | @SpringBootApplication 12 | @EnableOAuth2Sso 13 | @RestController 14 | public class SpringCloudOauth2ExampleApplication { 15 | 16 | @GetMapping("/") 17 | public String message(Principal principal) { 18 | return "Hi "+principal.getName()+" welcome to SpringCloudOauth2ExampleApplication"; 19 | } 20 | 21 | public static void main(String[] args) { 22 | SpringApplication.run(SpringCloudOauth2ExampleApplication.class, args); 23 | } 24 | 25 | } 26 | -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 4.0.0 5 | 6 | org.springframework.boot 7 | spring-boot-starter-parent 8 | 2.1.4.RELEASE 9 | 10 | 11 | com.javatechie 12 | spring-cloud-oauth2-example 13 | 0.0.1-SNAPSHOT 14 | spring-cloud-oauth2-example 15 | Spring cloud security using OAuth2 | GitHub 16 | 17 | 18 | 1.8 19 | Greenwich.SR2 20 | 21 | 22 | 23 | 24 | org.springframework.boot 25 | spring-boot-starter-web 26 | 27 | 28 | org.springframework.cloud 29 | spring-cloud-starter-oauth2 30 | 31 | 32 | org.springframework.cloud 33 | spring-cloud-starter-security 34 | 35 | 36 | 37 | org.springframework.boot 38 | spring-boot-starter-test 39 | test 40 | 41 | 42 | 43 | 44 | 45 | 46 | org.springframework.cloud 47 | spring-cloud-dependencies 48 | ${spring-cloud.version} 49 | pom 50 | import 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | org.springframework.boot 59 | spring-boot-maven-plugin 60 | 61 | 62 | 63 | 64 | 65 | --------------------------------------------------------------------------------