Angular 17 + Spring Boot 3 + Spring Security 6 + JWT

The main purpose of the application has been to demonstrate the implementation of the knowledge acquired throughout the training on the management of user access privileges to different elements (or modules as I will refer to throughout the document) of the application, the management of hierarchical users in different groups (called roles) and the administration by an authorised user. No less relevant has been the application of knowledge in the design and management of relational databases and their implementation platforms. Another factor taken into account was the security of the environment of use (JWT) and of the application (Angular), implementing functionalities such as the encryption of sensitive data, or the prevention of the use of elements sensitive to the injection of automated information (cracking or brute force attacks).

Architecture

This is the architecture that has been used for the production environment on a VPS.

VPS Architecture

The logical separation of frontend, backend and database.

Architecture GesMerCa Frontend-Backend

Execution environment - Frontend

GesMerCa LogoOnline web demo

API documentation - Backend

Swagger LogoApi online documentation


Repository with content

Repository


Sources:

Spring security + JWT