Table of Contents

OAuth2

Introduction

History

Security

Authentication vs. Authorization

Spring Security

Demo Application

Spring Boot

The demo applications will be developed using Spring Boot. It is assumed you already have an understanding of Spring Boot. If not, have a look at the Getting Started page for more information.

Development Environment

I will be using the Spring Tool Suite with Gradle STS support. The application will be running in embedded Tomcat with an in-memory DB at first. I'm developing on a Windows 10 machine but these instructions should work wherever for the most part. If you are using a different IDE (IntelliJ maybe?) you'll have to adjust accordingly but it shouldn't be a problem.

RFC 6749

Server Endpoints

Authorization Grant

Authorization Code Grant

Client Credentials Grant

Implicit Grant

Resource Owner Password Credentials Grant

Access Token

Refresh Token

Client Registration