Spring Boot and OAuth2:: A tutorial on "social" login and single sign on with Facebook and Github
Java HTML Shell Batchfile Ruby
Latest commit ae76b52 Jan 18, 2017 @dsyer dsyer Create UserInfoTokenServices with an explicit RestTemplate
It's actually optional for most providers, but it doesn't hurt to
make it explicit incase it is needed.

Fixes gh-44

README.adoc

tags projects
security
angular
rest
oauth
spring-security
spring-security-oauth
spring-boot

Social Login with Spring Boot and OAuth2

Table of Contents

This guide shows you how to build a sample app doing various things with "social login" using OAuth2 and Spring Boot. It starts with a simple, single-provider single-sign on, and works up to a self-hosted OAuth2 Authorization Server with a choice of authentication providers (Facebook or Github). The samples are all single-page apps using Spring Boot and Spring OAuth on the back end. They also all use AngularJS on the front end, but the changes needed to convert to a different JavaScript framework or to use server side rendering would be minimal.

Conclusion

We have seen how to use Spring Boot and Spring Security to build apps in a number of styles with very little effort. The main theme running through all of the samples is "social" login using an external OAuth2 provider. The final sample could even be used to provide such a service "internally" because it has the same basic features that the external providers have. All of the sample apps can be easily extended and re-configured for more specific use cases, usually with nothing more than a configuration file change. Remember if you use versions of the samples in your own servers to register with Facebook or Github (or similar) and get client credentials for your own host addresses. And remember not to put those credentials in source control!