Spring Security 6 With Reactjs, Oauth2, Jwt | Real Project
Published 8/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 11.26 GB | Duration: 18h 54m
Published 8/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 11.26 GB | Duration: 18h 54m
Build hands-on secure project using Spring Security 6, OAuth2, CORS, Multi-Factor Authentication, Password Security, JWT
What you'll learn
Build a Secure Notes Application: Design, develop, and deploy a fully functional secure notes application using Spring Boot, React, and Tailwind CSS.
Spring Security Mastery: Gain hands-on with JWT, OAuth2, and multi-factor authentication to secure your apps.
Master Spring Security Concepts: Learn the fundamentals and advanced concepts of Spring Security, including authentication providers, role-based authorization,
Advanced Security Concepts: Learn authentication providers, role-based authorization, and custom filters.
Integrate Front and Back-End: Handle CORS, CSRF, and JWT in React and Spring Boot for robust security.
User Management Systems: Implement secure password practices and manage user roles effectively.
OAuth2 Authentication: Add GitHub and Google sign-ins for seamless third-party authentication.
Secure API Development: Build secure APIs with Spring Boot, following best practices.
Deploy on AWS: Deploy Spring Boot apps on AWS, following cloud deployment best practices.
Audit Functionality: Add auditing to Spring Boot apps to track user actions.
Password Security: Use password encoders for security and implement password reset features.
Manage User Roles: Effectively manage user roles and permissions in your applications.
Requirements
Knowledge of Spring Boot, Tailwind CSS and React JS is Needed
Basic Java Knowledge: Familiarity with Java programming is recommended, as this course builds on Java concepts.
Understanding of Web Development Basics: A general understanding of web development, React, Tailwind CSS including HTML, CSS, and JavaScript, will be beneficial.
Familiarity with Spring Framework: Basic knowledge of the Spring Framework will help you grasp advanced concepts more quickly.
Description
MASTER SPRING SECURITY 6 WITH REACT: BUILD SECURE REAL-WORLD APPLICATIONS!Build secure projects using Spring Security 6, OAuth2, CORS and JWT. Gain hands-on skills with Spring Boot SecurityUnlock the Power of Spring Security and become a skilled Java Developer! Dive into the world of Spring Security and React to build secure, scalable, and production-grade applications. Whether you're new to Spring or looking to enhance your skills, this course provides a comprehensive path to mastering security in web development.Transform Your Development Skills with hands-on experience in creating a secure "Secure Notes" application. Learn how to integrate Spring Security with React, implement JWT for authentication, and explore advanced topics like OAuth2 and multi-factor authentication. This course covers everything you need to know, from authentication providers to deploying on AWS, making you proficient in full-stack web development.This course is 20+ HOURS of expert instruction, practical exercises, and real-world projects. Designed for developers eager to secure their applications, this course offers a deep dive into Spring Security, React integration, and the latest security practices.Learn the essentials of secure web development and progress to advanced concepts with hands-on projects and practical applications.THIS COURSE COVERS:Introduction to Spring SecurityBasic Authentication & Custom Security ConfigurationsIn-Memory Authentication ProviderUser Management & Role-Based AuthorizationPassword Security & EncodersCustom Filters & CSRF ProtectionJWT Authentication & AuthorizationSign-In and Sign-Up FunctionalityJavaScript & React BasicsTailwind CSS for Front-End DevelopmentCORS & CSRF with React and Spring BootNotes Functionality & AuditingOAuth2: GitHub & Google Sign-InMulti-Factor AuthenticationDeploying on AWSBy the end of this course, you'll be equipped to build and deploy secure applications using Spring Boot and React. Perfect for developers looking to advance their skills and create secure, production-ready applications. Enroll now to elevate your Spring Security expertise!GUARANTEEThis course is backed by a 30-day money-back guarantee.OUTCOME OF THIS COURSEBy the end of this course, you will:Understand Spring Security fundamentals and advanced concepts.Build and deploy a secure "Secure Notes" application.Master JWT and OAuth2 for authentication and authorization.Integrate React and Spring Boot for full-stack development.Deploy applications on AWS with confidence.Effectively manage user roles and permissions.WHO IS THIS COURSE FOR?Beginners: Start your journey with hands-on guidance in Spring Security.Aspiring Full Stack Developers: Gain skills to build secure, full-stack applications.Java Developers: Enhance your expertise with real-world, production-grade applications.Backend Developers: Implement advanced backend features using Spring Security.Microservices Enthusiasts: Prepare for future microservices development with Spring Boot.Job Seekers: Acquire skills essential for job interviews and career advancement.Web Developers: Enhance your skills in secure web development with Spring Boot.SO ARE YOU READY TO GET STARTED?What are you waiting for? Press the BUY NOW button and begin your journey to mastering Spring Security. See you inside the course!
Overview
Section 1: Getting Started with the Course
Lecture 1 Course Introduction
Lecture 2 Application Demo | What are we going to build
Lecture 3 Configure Intellij for Better Experience
Lecture 4 Introduction to Spring Security
Lecture 5 Setting up Spring Project
Lecture 6 Spring Security Framework to the Rescue | Importance & Benefits
Section 2: Getting Started with Spring Security
Lecture 7 Principal and Authentication Object
Lecture 8 Understanding Filters and Filter Chain | Deep Dive
Lecture 9 How Spring Security Works
Lecture 10 Getting Started with Spring Security
Lecture 11 Understanding the default behavior
Lecture 12 Understanding What Happened
Lecture 13 Configure Static Username and Password
Lecture 14 Spring Security - Behind the Scenes
Lecture 15 More with Form Based Authentication
Lecture 16 Form Based Authentication via Postman
Lecture 17 Filters that you should be aware of
Lecture 18 JSession ID in Action
Section 3: Basic Authentication with Spring Security & Modifying Default Security Config
Lecture 19 Introducing Basic Authentication with Spring Security
Lecture 20 Defining our own custom configuration
Lecture 21 Testing Basic Authentication
Lecture 22 Basic Authentication vs Form Based
Lecture 23 Making Basic Authentication Stateless
Lecture 24 Basic Authentication in Postman
Lecture 25 Base64 Encoding | Concept + Demo
Lecture 26 Permitting Certain Requests
Lecture 27 Denying Certain Requests
Section 4: Secure Notes Project | Getting Started
Lecture 28 Structuring Thoughts
Lecture 29 Setting up the Structure of Notes
Lecture 30 Setting up Repositories and Service Layer
Lecture 31 Setting Up Notes Controller
Lecture 32 Installing MySQL on Windows
Lecture 33 Installing MySQL on Mac
Lecture 34 Installing MySQL on Linux
Lecture 35 MySQL Interface
Lecture 36 Setting Up MySQL Database and Configure App To Work With It
Lecture 37 Testing API in Postman
Lecture 38 Updating Security Configurations
Section 5: Authentication Providers | In Memory Authentication Provider
Lecture 39 Introduction to Authentication Providers
Lecture 40 Different Authentication Providers
Lecture 41 What is In Memory Authentication
Lecture 42 Configuring Multiple Users InMemory | From One to Multiple Users
Lecture 43 Testing Changes
Section 6: User Management with Spring Security
Lecture 44 Introduction to Core Classes & Interfaces for User Management
Lecture 45 User and UserDetails
Lecture 46 UserDetails, UserDetailsService and UserDetailsManager
Lecture 47 Reviewing Usage of InMemoryUserDetailsManager
Lecture 48 Understanding the schema and getting it created
Lecture 49 Making use of core classes to Authenticate users
Lecture 50 Testing and Reviewing the Current Flow
Lecture 51 Custom User Model - Why and How
Lecture 52 Defining Our Own User Model and Repository
Lecture 53 Defining UserDetailsServiceImpl and UserDetailsImpl
Lecture 54 Creating RoleRepository
Lecture 55 Observing the Changes and Getting Users Created
Lecture 56 Behind the Scenes Again
Section 7: Role Based Authorization
Lecture 57 Introduction to Role Based Authorization
Lecture 58 Inbuilt classes and interfaces For Authorization
Lecture 59 Understanding Custom Role Creation and Management
Lecture 60 Implementing Admin Controller
Lecture 61 Restricting Admin Actions
Lecture 62 Managing Access with Annotations
Lecture 63 Method Level Security
Lecture 64 Enabling Method Level Security
Lecture 65 URL Based Restrictions
Lecture 66 URL Based Restrictions | Hands On
Lecture 67 Security For Our Application
Lecture 68 Method Level Security vs RequestMatchers Approach
Section 8: Password Security and Management With Password Encoders
Lecture 69 Introduction to Password Security and Password Encoders
Lecture 70 Introduction to Hashing and Salting
Lecture 71 PasswordEncoder Interface and its Implementations
Lecture 72 Different Inbuilt Password Encoders
Lecture 73 Encoding Passwords in our application
Section 9: Custom Filters in Spring Security
Lecture 74 Introduction to Custom Filters
Lecture 75 Default Filter Chain
Lecture 76 Filter Lifecycle
Lecture 77 Inbuilt Classes for Filter Implementation
Lecture 78 Creating Your First Custom Filter
Lecture 79 Request Validation with Custom Filters
Lecture 80 Advanced Custom Filter Scenarios
Lecture 81 Custom Filters in Our Project
Section 10: CSRF | CSRF Protection in Spring Security and Spring Boot
Lecture 82 What is CSRF?
Lecture 83 What is CSRF Protection?
Lecture 84 Default CSRF Mechanism in Spring Security
Lecture 85 Configuring CSRF Protection in Spring Security
Lecture 86 Customize CSRF Protection When Necessary
Section 11: JWT Authentication [JSON Web Token Based Authentication] With Spring Security
Lecture 87 What is JWT and Why is it needed?
Lecture 88 Understanding the Implementation
Lecture 89 Setting up the project
Lecture 90 Defining AuthEntryPointJwt
Lecture 91 Sign-in Flow
Lecture 92 Managing Security Configurations
Lecture 93 Testing Changes
Section 12: Implementing Signin and Signup | Login and Register Functionality
Lecture 94 What are we going to build?
Lecture 95 Setting up DTOs
Lecture 96 The Signup Endpoint
Lecture 97 Getting User Details Endpoint
Lecture 98 Getting Username
Section 13: Getting Started with Secure Notes React Application
Lecture 99 Setting up the React App
Lecture 100 Understanding Application Structure
Lecture 101 Using .env in React.js
Lecture 102 Custom Axios instance
Lecture 103 Managing Global State of Application
Lecture 104 Protected Routes
Lecture 105 Understanding NavBar
Lecture 106 Understanding App.js
Lecture 107 Libraries we are using
Section 14: CORS & CSRF with React and Spring Boot + Spring Security
Lecture 108 Introduction to CORS
Lecture 109 Fixing CORS issue
Lecture 110 Multiple ways of fixing - Global and Controller Level
Section 15: Implementing Notes Functionality
Lecture 111 Enabling Users to create notes
Lecture 112 Testing Note Creation
Lecture 113 Fetching user notes
Section 16: Auditing In Your Spring Boot Application
Lecture 114 What is Auditing and Why is it needed?
Lecture 115 Implementing Models and Repositories
Lecture 116 Implementing Service Layer
Lecture 117 Recording Audit Events
Lecture 118 Implementing Controllers
Lecture 119 Testing API Changes
Section 17: Building the Admin Area with Audit Functionality | React Application
Lecture 120 Admin Tab and Admin Routes
Lecture 121 List of Users
Lecture 122 Admin Actions | Building the Backend
Lecture 123 Users Detail Page
Lecture 124 List of Audit Logs
Lecture 125 Audit Logs Detail Page
Section 18: Enabling Users to Reset Password
Lecture 126 Password Reset Functionality | The Backend
Lecture 127 Generating the Password Reset Token
Lecture 128 The Email Functionality
Lecture 129 Validating the Password Reset Token
Lecture 130 Password Reset Functionality | The Frontend
Lecture 131 ForgotPassword Component
Lecture 132 ResetPassword Component
Lecture 133 Testing and Reviewing the Entire Flow
Section 19: Implementing OAuth2 | Github + Google Signin & Signup
Lecture 134 Introduction to OAuth2
Lecture 135 Application Flow
Lecture 136 Getting Started with GitHub | Let’s setup the app
Lecture 137 Setting up the Project to work with OAuth2
Lecture 138 Security Configuration for OAuth2
Lecture 139 Testing backend changes
Lecture 140 Importance of Custom Success Handler
Lecture 141 Implementing Custom Success Handler
Lecture 142 Understanding Front end code
Lecture 143 Authenticating your users using Google
Lecture 144 Going through the entire flow’s source code
Aspiring Full Stack Developers: If you're looking to become a well-rounded full-stack developer, this course will equip you with the skills to build secure applications using Spring Boot and React.,Java Developers: Enhance your expertise by learning how to implement advanced security features and build real-world, production-grade applications with Spring Security.,Backend Developers: Those focused on server-side development will benefit from in-depth knowledge of Spring Security, JWT, OAuth2, and authentication techniques.,Security Enthusiasts: Individuals interested in learning how to secure web applications and understand modern security practices.,Job Seekers and Career Changers: Professionals preparing for job interviews in web development and security roles, seeking to add valuable skills to their resume.,Beginners Eager to Learn: Motivated learners with basic programming knowledge who are eager to dive into Spring Security and React development.