This course was created with the
course builder. Create your online course today.
Start now
Create your course
with
Autoplay
Autocomplete
Previous Lesson
Complete and Continue
JSON Web Token (JWT) with Spring Security And Angular
Introduction
Introduction (1:30)
Application Demo (9:29)
Prerequisites (4:48)
Instructor Teaching Style (4:40)
How to get the most out of this course (5:25)
Environment Setup (12:40)
Asking questions and Source code
Web Application Overview
Web Application Structure (5:33)
Front End (2:55)
Back End (3:08)
Data Store (4:17)
Cloud (5:37)
Application Domain
User domain - Part 1 (15:30)
User domain - Part 2 (4:18)
Custom Http Response (11:35)
Spring Security User (11:21)
Database Configuration (6:44)
Run Application (7:29)
Security
Web Application Security (2:29)
Authentication and Authorization (2:33)
Json Web Toke (JWT) (2:56)
Security with Json Web Token (JWT) (3:19)
Security Constants (17:16)
Java JWT Library (4:35)
JWT Token Provider - Part 1 (30:56)
JWT Token Provider - Part 2 (12:17)
JWT Token Provider - Part 3 (11:59)
JWT Authorization Filter - Part 1 (10:22)
JWT Authorization Filter - Part 2 (10:53)
Authentication Entry Point (11:11)
Access Denied Handler (2:38)
User Repository (4:01)
User Details Service (17:27)
Security Configuration (15:47)
Testing Security Endpoint (11:20)
Custom Exception Handling
Exception Handling (4:56)
Custom Exception Classes (4:55)
Custom Exception Handling - Part 1 (5:16)
Custom Exception Handling - Part 2 (9:48)
Custom Exception Handling - Part 3 (7:56)
Testing Exception Handling (7:45)
Override Spring Default White Label Error (23:38)
User Registration
User authorities (11:04)
User Roles (6:07)
User Registration - Part 1 (8:15)
User Registration - Part 2 (9:34)
User Registration - Part 3 (14:24)
User Registration - Part 4 (5:36)
User Registration - Part 5 (11:12)
Code Cleanup (9:04)
Testing User Registration (5:32)
Generate Json Web Token (JWT)
Security With Json Web Token (JWT) (1:30)
Logging Generating JWT (8:14)
Testing User Login (9:59)
Source Code
Brute Force Attack
Defining Brute Force Attack (2:37)
Brute Force Attack Cache - Part 1 (8:48)
Brute Force Attack Cache - Part 2 (11:05)
Authentication Failure Listener (6:13)
Authentication Success Listener (4:08)
Validating User Login (8:47)
Testing Brute Force Attack (10:27)
Email Notification
Email Constants (3:15)
Email Session (6:05)
Email Content (6:11)
Sending Email (3:57)
Testing Email Notification (6:34)
Gmail Less Secure App
User Service and Implementation
User Service Methods (7:51)
File Constant (6:23)
User Service Implementation - Part 1 (9:00)
User Service Implementation - Part 2 (8:41)
User Service Implementation - Part 3 (9:37)
User Service Implementation - Part 4 (7:30)
User Resource
API Design Progress (3:40)
Adding New User (10:31)
Updating, Finding, and Resetting User Password (11:08)
Deleting and Updating User Profile Image (11:51)
Fetching User Profile Image (8:19)
Getting User Avatar Image (10:40)
Different Types of Tests (8:37)
API Testing
Introduction (3:28)
Testing User Registration (9:37)
Testing User Login (8:54)
Testing User Add (9:10)
Testing User Update (5:10)
Testing User Find (3:00)
Testing User List (7:34)
Testing User Reset Password (5:49)
Testing User Delete (11:45)
Testing User Image Update (6:20)
Front End Introduction
Introduction (9:03)
Front End Design (5:28)
Creating Angular Application (6:56)
Authentication Service
Creating Service (5:19)
Configuring HTTP and Environment Variable (5:39)
Login HTTP Service Call (9:59)
Creating User Class (1:58)
Registering User HTTP Call (2:20)
Logging User Out (3:43)
Adding Token to Cache (2:29)
Adding User to Cache (1:45)
Retrieving User from Cache (2:23)
Loading Token from Cache (2:46)
Retrieving Token from Cache (0:52)
Checking Logged in User (10:38)
User Service
Listing User HTTP Call (3:25)
Adding User HTTP Call (3:30)
Updating User HTTP Call (1:44)
Resetting Password HTTP Call (3:11)
Updating Profile Image HTTP Call (5:22)
Deleting User HTTP Call (2:13)
Adding Users to Cache (2:23)
Retrieving User from Cache (3:13)
Adding User Class Properties (2:53)
Creating Form Data (6:23)
Custom HTTP Response Mapping (8:05)
Interceptor
Introduction (3:09)
Creating Interceptor - Part 1 (9:03)
Creating Interceptor - Part 2 (8:04)
Configuring HTTP Interceptor (3:03)
Guard
Introduction (2:34)
Creating Guard - Part 1 (2:18)
Creating Guard - Part 2 (7:37)
Configuring Guard (0:55)
Notification
Introduction (7:38)
Creating Notification Module (9:16)
Configuring Notification Module (1:38)
Creating Notification Service (6:23)
Notification Types (7:41)
HTML Template
HTML Template Walk-through (12:41)
Generating Components (4:51)
Configuring Routes (6:28)
Test Routes (2:15)
Adding Router Outlet (2:45)
User Logging
Login Template - Part 1 (4:14)
Login Template - Part 2 (2:19)
Login Component - Part 1 (7:22)
Login Component - Part 2 (6:07)
Login Component - Part 3 (5:06)
Login Component - Part 4 (4:25)
Login Component - Part 5 (2:12)
Adding HTTP Header Type (2:15)
Login Template - Part 3 (4:13)
Login Template - Part 4 (5:39)
Testing Login - Part 1 (6:10)
Adding Notification Styles and Element (6:12)
Testing Login - Part 2 (4:49)
Testing Login - Part 3 (5:58)
Testing Login - Part 4 (6:17)
Register Page
Register Template (4:34)
Register Component (5:31)
Testing Register (6:43)
Display User Information
Adding Page Header (5:34)
Adding Tab Name - Part 1 (6:58)
Adding Tab Name - Part 2 (6:21)
Adding User Table (3:05)
Fetching Users (8:34)
Adding Users to Table (7:09)
User Information Modal - Part 1 (8:00)
User Information Modal - Part 2 (7:10)
User List Page
Adding New User Form (6:17)
JavaScript File Change Event (5:03)
Getting Profile Image and Save button (6:28)
Saving New User (7:50)
Refactoring and Testing Add New User (8:27)
About the Implementation (1:51)
Search User - Part 1 (8:21)
Search User - Part 2 (10:55)
Open Edit Model Logic (7:20)
Edit User HTTP Call (4:34)
Testing Edit User (2:10)
Delete User HTTP Call (5:17)
Testing Delete User (4:13)
Reset Password HTTP Call (6:30)
Testing Reset Password (8:50)
User Profile Page
User Profile Template (4:47)
Updating User (5:50)
Logging User Out (3:33)
Profile Image Form (6:07)
Updating Profile Image (5:38)
Report Upload Progress - Part 1 (5:29)
Report Upload Progress - Part 2 (9:06)
Report Upload Progress - Part 3 (5:16)
Enhancement
Hiding Sensitive Information (6:56)
Refactoring Delete User (5:08)
Delete User Image on User Delete (6:12)
Allowing Only Image Files - Part 1 (7:26)
Allowing Only Image Files - Part 2 (4:46)
Reset Password Route (4:38)
Security Management
Introduction (3:06)
Mapping User Roles (2:44)
Fetching Current User Role (4:34)
Role-based Security Management - Part 1 (6:36)
Role-based Security Management - Part 2 (6:23)
Role-based Security Management - Part 3 (6:51)
Managing Subscriptions (2:09)
Managing Subscriptions with Subsink (5:26)
Deployment
Introduction (4:56)
Using AWS (4:07)
Provisioning EC2 Instance (7:10)
Configuring EC2 Instance - Part 1 (6:37)
Configuring EC2 Instance - Part 2 (7:38)
Configure Spring Boot Application (7:30)
Running in AWS (7:47)
Deploying Angular Application (13:51)
Creating Unix Service (16:56)
Testing in Production (4:08)
Final Note
Becoming a Software Engineer (12:49)
Allowing Only Image Files - Part 1
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock