Book Image

OAuth 2.0 Cookbook

By : Adolfo Eloy Nascimento
Book Image

OAuth 2.0 Cookbook

By: Adolfo Eloy Nascimento

Overview of this book

OAuth 2.0 is a standard protocol for authorization and focuses on client development simplicity while providing specific authorization flows for web applications, desktop applications, mobile phones, and so on. This book also provides useful recipes for solving real-life problems using Spring Security and creating Android applications. The book starts by presenting you how to interact with some public OAuth 2.0 protected APIs such as Facebook, LinkedIn and Google. You will also be able to implement your own OAuth 2.0 provider with Spring Security OAuth2. Next, the book will cover practical scenarios regarding some important OAuth 2.0 profiles such as Dynamic Client Registration, Token Introspection and how to revoke issued access tokens. You will then be introduced to the usage of JWT, OpenID Connect, and how to safely implement native mobile OAuth 2.0 Clients. By the end of this book, you will be able to ensure that both the server and client are protected against common vulnerabilities.
Table of Contents (16 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
Index

Implementing client registration


This recipe shows you how to use Spring Security OAuth2 to streamline the development of OAuth 2.0 client registration so that you do not have to worry about writing a code that interacts with the database. As you will learn, Spring Security OAuth2 provides an abstraction, leaving you in charge of creating just controller code and the respective views.

Getting ready

To run this recipe, we have to create an OAuth 2.0 Provider project which has at least one registered user (which is the Resource Owner), and we have to use one relational database (MySQL for this recipe) and configure it appropriately, as we did for rdbms-server project that was created for the recipe, Using a relational database to store tokens and client details.

The source code for this recipe is available on GitHub at https://github.com/PacktPublishing/OAuth-2.0-Cookbook/tree/master/Chapter02/oauth2provider.

How to do it...

Perform the following steps to create an OAuth 2.0 Provider that allows...