Spring Security Login & Logout With Spring Boot Web Project

Posted By: ELK1nG

Spring Security Login & Logout With Spring Boot Web Project
Published 3/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.15 GB | Duration: 6h 49m

Build custom login, logout implementation with spring security by using spring boot web application and MySQL database

What you'll learn

Spring security login and logout implementation with spring boot web application in easy way

Eclipse download and Installation

MySQL download and Installation

SQLyog download and Installation

Spring boot project creation from scratch

Custom login and logout implementation

Forgot password implementation

Reset password implementation

Sending email from spring boot web application

Design web pages in easy way without having any design knowledge

Learn how to make an Ajax calls by using JQuery in easy way without having knowledge

Create MySQL database connection with spring boot web application

User and Role Entity creation

User and Role model class creation

Implement Many to Many relationship between User Entity and Role Entity

Create Login Controller and login page in easy way

Enable bootstrap in spring boot web application

Create Sign Up Page in easy way

Enable Spring security to our spring boot web application

Understand spring security architecture in easy way

Understand how hacker can hack our credentials

Create custom security configuration class

Create static and dynamic users to login our web application

Create custom user details service class in easy way

password encoding

Create custom model mapper to convert DTO to Entity

Ajax calls to validate user exist in database or not

Create user jpa repository and role jpa repository

Read user credentials from database

Create home page in easy way

Create logout functionality in easy way

Forgot password business login implementation

Send reset password link email from spring boot web application

Reset password business logic implementation

Requirements

java knowledge required.

Description

In this course students can learn how to develop login and logout feature with spring security by using spring boot web application in easy way. Key concepts implementation:Sign Up, login, logout, forgot password, reset password, sending an email to user to reset the password, change password implementation (Spring security 6 + spring boot + MySQL database)Spring Security is a powerful and highly customizable authentication and access-control framework. It is the de-facto standard for securing Spring-based applications.Spring Security is a framework that focuses on providing both authentication and authorization to Java applications. Like all Spring projects, the real power of Spring Security is found in how easily it can be extended to meet custom requirementsFeaturesComprehensive and extensible support for both Authentication and AuthorizationProtection against attacks like session fixation, clickjacking, cross site request forgery, etcServlet API integrationOptional integration with Spring Web MVCAuthentication :Spring Security provides comprehensive support for authentication. Authentication is how we verify the identity of who is trying to access a particular resource. A common way to authenticate users is by requiring the user to enter a username and password. Once authentication is performed we know the identity and can perform authorization.Spring Security provides built-in support for authenticating users. This section is dedicated to generic authentication support that applies in both Servlet and WebFlux environments. Refer to the sections on authentication for Servlet and WebFlux for details on what is supported for each stack.Authorization :Spring Security provides comprehensive support for authorization. Authorization is determining who is allowed to access a particular resource. Spring Security provides defense in depth by allowing for request based authorization and method based authorization.Development features:Software installation.Spring boot web project development from scratch.Bootstrap spring boot web application.Create Login and Logout , registration, forgot password, change password web pages in easy way.Understand spring security in easy way.Understand Authentication and Authorization.Understand CSRF attack and how attackers can hack web application.Create User and Roles.Implement Many to Many relationship between user and roles.Create spring security custom configuration class.login application by using static user credentials.login application by using credentials from databaseAjax calls to validate user exist in database or not.Forgot password implementation.Send email with reset password link to end user.Reset Password web page implementation.Change password web page implementation and e.t.c.

Overview

Section 1: Introduction

Lecture 1 Introduction

Section 2: Software installation

Lecture 2 Download and Install Eclipse

Lecture 3 Download and install MySQL

Lecture 4 Download and install SQLyog

Section 3: Create Spring boot web application.

Lecture 5 create spring boot project with spring initializer

Lecture 6 Create LoginController class

Lecture 7 Create login web page

Lecture 8 Design login web page with bootstrap

Lecture 9 Optimize login web page

Lecture 10 Create User Registration web page

Lecture 11 Design User Registration web page with bootstrap

Lecture 12 Create home page

Section 4: Secure spring boot web application with spring security.

Lecture 13 Spring security introduction

Lecture 14 Understand spring security execution flow

Lecture 15 Enable spring security to our web application

Lecture 16 Configure static user credentials by using application properties

Lecture 17 Create custom security configuration class

Lecture 18 Create multiple static user credentials by using custom security class

Lecture 19 Enhance defaultPasswordEncoder with BCryptPasswordEncoder

Lecture 20 Understand JSESSIONID in Spring Security.

Lecture 21 Understand CSRF attack in our web application.

Lecture 22 Understand how spring security protecting our web application from csrf attack

Lecture 23 Display default home page after authentication

Lecture 24 Display custom login page instead of default login page of spring security

Lecture 25 Display custom login page as default web page.

Lecture 26 26. Login web application with custom login page.

Lecture 27 Display login error message in login page for invalid credentials.

Lecture 28 Implement logout functionality

Lecture 29 Display logout success message in login page

Section 5: Web application connect with MySQL database

Lecture 30 Create database connection

Section 6: Create Entity, JpaRepository and Auto generate database tables

Lecture 31 Create User and Role entities

Lecture 32 Create User and Role JPA Repository

Lecture 33 Create many to many relationship between User and Role Entity

Lecture 34 Auto generate database tables

Section 7: User Registration view layer and business layer implementation

Lecture 35 Create DTO and service classes

Lecture 36 Write logic to send data from registration web page to controller and service

Lecture 37 User registration web page data validation.

Lecture 38 Configure user roles in MySQL database

Lecture 39 Understand about ModelMapper and create ModelMapper component

Lecture 40 Implement business logic to insert user data.

Lecture 41 Insert user details in database

Lecture 42 Display user registration successful message in login page.

Lecture 43 Duplicate email id server side validation

Section 8: Email Id duplication check validation by using JQuery Ajax Call

Lecture 44 Download JQuery library and include it in user registration web page

Lecture 45 Implement Ajax call to validate email id

Lecture 46 Create findByEmail rest API

Lecture 47 Test JQuery Ajax call to validate email id present in database or not

Section 9: Read user credentials from MySQL database and login to web application

Lecture 48 Read user credentials from database

Lecture 49 Login web application by using user credentials from database.

Section 10: Forgot password implementation

Lecture 50 Create and display forgot password web page

Lecture 51 Create email sender service class

Lecture 52 Configure SMTP properties in application.properties

Lecture 53 Add reset password token and token created date columns in user table

Lecture 54 Create send email method

Lecture 55 Generate Rest Password token and Reset Password link

Lecture 56 Update reset password token in user table

Lecture 57 Construct email content to send an email to end user

Lecture 58 Send an email to end user with reset password link

Section 11: Reset password implementation

Lecture 59 Create reset password web controller.

Lecture 60 Validate reset password token.

Lecture 61 Validate reset password link expiry time.

Lecture 62 Create change password web page and message web page.

Lecture 63 Validate password and confirm password match

Lecture 64 What happens if I modify reset password link token in browser?

Lecture 65 Create web controller method to update change password in database

Lecture 66 Implement logic to update change password in database

Section 12: Congratulations to reach this milestone

Lecture 67 Congratulations

This course is helpful for who are all wanted to develop login and logout feature with spring boot web application from scratch