title
Please take a moment to fill out this form. We will get back to you as soon as possible.
All fields marked with an asterisk (*) are mandatory.
OAuth 2.0: Protect Web Applications using Spring Security
Course Description
Overview
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 course also provides useful recipes for solving real-life problems using Spring Security and creating Android applications. The course 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 course 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 course, you will be able to ensure that both the server and client are protected against common vulnerabilities.Key benefits of the course:
- Interact with public OAuth 2.0 protected APIs such as Facebook, LinkedIn and Google
- Use Spring Security and Spring Security OAuth2 to implement your own OAuth 2.0 provider
- Learn how to implement OAuth 2.0 native mobile clients for Android applications
Objectives
- Use Redis and relational databases to store issued access tokens and refresh tokens
- Access resources protected by the OAuth2 Provider using Spring Security
- Implement a web application that dynamically registers itself to the Authorization Server
- Improve the safety of your mobile client using dynamic client registration
- Protect your Android client with Proof Key for Code Exchange
- Protect the Authorization Server from invalid redirection
Prerequisites
- Use Redis and relational databases to store issued access tokens and refresh tokens
- Access resources protected by the OAuth2 Provider using Spring Security
- Implement a web application that dynamically registers itself to the Authorization Server
- Improve the safety of your mobile client using dynamic client registration
- Protect your Android client with Proof Key for Code Exchange
- Protect the Authorization Server from invalid redirection
Topics
- Preparing the environment
- Reading the user's contacts from Facebook on the client side
- Reading the user's contacts from Facebook on the server side
- Accessing OAuth 2.0 LinkedIn protected resources
- Accessing OAuth 2.0 Google protected resources bound to the user's session
- Protecting resources using the Authorization Code grant type
- Supporting the Implicit grant type
- Using the Resource Owner Password Credentials grant type as an approach for OAuth 2.0 migration
- Configuring the Client Credentials grant type
- Adding support for refresh tokens
- Using a relational database to store tokens and client details
- Using Redis as a token store
- Implementing client registration
- Breaking the OAuth 2.0 Provider in the middle
- Using Gatling to load test the token validation process using shared databases
- Creating an OAuth 2.0 client using the Authorization Code grant type
- Creating an OAuth 2.0 client using the Implicit grant type
- Creating an OAuth 2.0 client using the Resource Owner Password • Credentials grant type
- Creating an OAuth 2.0 client using the Client Credentials grant type
- Managing refresh tokens on the client side
- Accessing an OAuth 2.0 protected API with RestTemplate
- Revoking issued tokens
- Remote validation using token introspection
- Improving performance using cache for remote validation
- Using Gatling to load test remote token validation
- Dynamic client registration
- Generating access tokens as JWT
- Validating JWT tokens at the Resource Server side
- Adding custom claims on JWT
- Asymmetric signing of a JWT token
- Validating asymmetric signed JWT token
- Using JWE to cryptographically protect JWT tokens
- Using JWE at the Resource Server side
- Using proof-of-possession key semantics on OAuth 2.0 Provider
- Using proof-of-possession key on the client side
- Authenticating Google's users through Google OpenID Connect
- Obtaining user information from Identity Provider
- Using Facebook to authenticate users
- Using Google OpenID Connect with Spring Security 5
- Using Microsoft and Google OpenID providers together with Spring Security 5
- Preparing an Android development environment
- Creating an Android OAuth 2.0 client using an Authorization
- Code with the system browser
- Creating an Android OAuth 2.0 client using the Implicit grant type with the system browser
- Creating an Android OAuth 2.0 client using the embedded browser
- Using the Password grant type for client apps provided by the OAuth 2 server
- Protecting an Android client with PKCE
- Using dynamic client registration with mobile applications
- Validating the Resource Server audience
- Protecting Resource Server with scope validation
- Binding scopes with user roles to protect user's resources
- Protecting the client against Authorization Code injection
- Protecting the Authorization Server from invalid redirection
Related Courses
-
Mastering Microservices with Spring Boot and Spring Cloud
EJJF-730- Duration: 4 Days
- Delivery Format: Classroom Training
- Price: 2,340.00 USD
-
Core Spring Quick Start | Introduction to Spring Essentials, Spring Boot, AOP, Persistence & More
TT3320- Duration: 2
- Delivery Format: Classroom Training, Online Training
- Price: 1,400.00 USD
Self-Paced Training Info
Learn at your own pace with anytime, anywhere training
- Same in-demand topics as instructor-led public and private classes.
- Standalone learning or supplemental reinforcement.
- e-Learning content varies by course and technology.
- View the Self-Paced version of this outline and what is included in the SPVC course.
- Learn more about e-Learning
Course Added To Shopping Cart
bla
bla
bla
bla
bla
bla
Self-Paced Training Terms & Conditions
Exam Terms & Conditions
Sorry, there are no classes that meet your criteria.
Please contact us to schedule a class.

STOP! Before You Leave
Save 0% on this course!
Take advantage of our online-only offer & save 0% on any course !
Promo Code skip0 will be applied to your registration
Purchase Information
title
Please take a moment to fill out this form. We will get back to you as soon as possible.
All fields marked with an asterisk (*) are mandatory.