This project demonstrates the implementation of security using Spring Boot 3.0 and JSON Web Tokens (JWT). It includes the following features:
-
User registration and login with JWT authentication
-
Password encryption using BCrypt
-
Role-based authorization with Spring Security
-
Customized access denied handling
-
Logout mechanism
-
Refresh token
-
Spring Boot 3.0
-
Spring Security
-
JSON Web Tokens (JWT)
-
BCrypt
-
Maven
-
Swagger
To get started with this project, you will need to have the following installed on your local machine:
- JDK 17+
- Maven 3+
To build and run the project, follow these steps:
- Clone the repository:
[git clone https://github.com/EmrhnOZCN/spring-security-jwt.git
- Navigate to the project directory: cd spring-boot-security-jwt
- Add database "security" to postgres
- Build the project: mvn clean install
- Run the project: mvn spring-boot:run
-> The application will be available at http://localhost:8080/swagger-ui/index.html