Spring Boot 3 + Spring Security 6 - JWT Authentication and Authorisation 2024

preview_player
Показать описание
Welcome to our in-depth tutorial on integrating Spring Security 6 with Spring Boot 3!

In this video, you'll learn how to implement JWT authentication and authorization in a Spring Boot 3.0 application using Spring Security 6 and a MySQL database to store user credentials.

You'll see how easy it is to secure your application and protect your endpoints using JSON Web Tokens. We'll start by setting up a MySQL database and creating a user table to store our credentials.

Then, we'll configure Spring Security to use JWT and define some security rules for our application. Finally, we'll test our setup by building a simple API and using Postman to send authenticated requests.

What you'll learn:

1. Setting up Spring Security 6 in Spring Boot 3
2. Configuring security for different endpoints
3. Implementing authentication and authorization
4. Customizing security filters and interceptors
5. Handling common security vulnerabilities

Use Cases for JWT

Authentication:
Scenario: After a user logs in, the server generates a JWT containing user identity and permissions.
Benefit: The token is sent to the client and used for subsequent requests to verify the user’s identity.

Authorization:
Scenario: A JWT may contain roles or permissions, allowing services to determine if a user has the necessary privileges.
Benefit: Ensures that users can only access resources they are authorized to.

Single Sign-On (SSO):
Scenario: JWTs are used in SSO systems to allow users to authenticate once and access multiple services.
Benefit: Simplifies authentication across different applications and services.

API Security:
Scenario: JWTs are used to secure APIs by validating requests and ensuring that they come from authenticated users.
Benefit: Protects resources and endpoints from unauthorized access.

Microservices Communication:
Scenario: In a microservices architecture, services use JWTs to communicate securely and verify the identity of requests.
Benefit: Simplifies service-to-service communication and reduces the need for complex authentication setups.

JWTs offer a powerful and flexible mechanism for managing authentication and authorization in modern applications, especially those requiring stateless and scalable solutions.

#springsecurity #springsecuritytutorial #spring #springboot

Table of Content

00:00 Intro
00:40 JWT token format
01:24 Use Case
03:45 Spring Boot Project
05:45 Project Structure
06:42 User (Entity)
07:06 JwtUtil
08:42 JwtRequestFilter
10:51 UserRepository
11:02 SecurityConfig
11:52 CustomUserDetailService
12:45 AuthController
13:13 AuthenticationRequest and AuthenticationRewsponce
21:27 Testing from postman

More Videos

🎉 Thank You for Watching! 🎉

If you enjoyed this video and found it helpful, don't forget to show your support:

👍 Like the video to let us know you enjoyed it!
🔗 Share it with your friends and fellow developers.
💬 Comment below with your thoughts or any questions you might have.

And most importantly, Subscribe to our channel for more insightful Java development tutorials! Hit the notification bell 🔔 so you never miss an update.

Thank you for being an amazing part of our community! Let's keep learning and growing together. 🚀

Рекомендации по теме
Комментарии
Автор

Your videos are great. you are very best teaching in spring boot all advances topic. Can you give more instructions about RabbitMQ?

PraveenM-ygzy
Автор

Maybe I didn’t listen well, but I will be very grateful if you answer 2 questions: Should access_token and refrfesh_token be httponly or refresh_token only?


In this case, JS/TS will not have the rights to make a request to the /refresh-token endpoint in the case when the access-token has completed its work, because it will not be able to take the httponly refresh_token.

What to do? Can you explain the next steps?


Thanks in advance!

kkfdlpt
Автор

i created frontend Ecommerce react application and i am trying to configure jwt auth from past 2 weeks but did not find a single video on internet for it coz everything is deprecated broo...thanks for this video ill try to implement it but can u create a complete proper video where u show complete user login and also registration using current JWT AUTH if possible simple frontend for login signup...trust me there is huge number of people who are beginners and struggling to implement it..thank u so much

shri