Spring Boot, Spring Security, REST API, token, Swagger, JPA

REST API, Autenticazione token(Header), con Spring Security ed accesso a MariaDB. Utilizzo Swagger e AES 256 java.crypto

Ratings: 1.00 / 5.00




Description

In questo corso realizzeremo un progetto funzionante CRUD per l'anagrafica di un Utente, disponibile il download per chi acquista il corso.


Tale Utente verrà gestito tramite delle REST API, esposte tramite l'interfaccia web SwaggerUI, solo se si è autenticati con JWT Token. Per richiedere il JWT Token è necessario Postman (download gratuito).


Una sola API sarà disponibile al di fuori del contesto dell'autenticazione, per ottenere il token.

L'utente verrà registrato su un Database MySQL (MariaDB) e la password verrà salvata in maniera criptata, utilizzando come libreria: java crypto.


Tale applicazione sarà quindi in grado di gestire il criptaggio ed il decriptaggio della password utilizzando un metodo di crittografia asimmetrica (AES 256) con chiave privata, storicizzata anch'essa su DB e relativa all'anagrafica dell'utente.


Ci sarà una fase di spiegazione (poco teorica, NON VERRA' SCRITTO CODICE LIVE) che ci farà addentrare, in maniera molto rapida, nei tecnicismi del prodotto, per comprenderne la configurazione (principalmente) ed il funzionamento.


Ci sarà una seconda fase di DEBUG live, dove apprenderemo, sia la struttura del progetto, sia la parte teorica che anche  quella pratica.


Inizialmente nelle prime lezioni si configura l'ambiente di sviluppo ed il DB, per esser sicuri di averne uno funzionante.


Le tecnologie utilizzate per la realizzazione del progetto sono:


Java 11

- Spring Boot

- Spring Web (Esposizione REST API)

- Spring Security (JWT Token Authentication)

- Spring Data JPA con MariaDB

- SwaggerUI (Web Rest Client)

- Java Crypto (Gestione password utente e chiave privata AES 256)


Arriveremo ad ottenere un archetype di un progetto funzionante al primo click, da utilizzare come base di partenza per qualsiasi tipo di applicazione backend con questi requisiti, ma soprattutto comprenderne al 100% ogni configurazione.


L'utente riuscirà ad effettuare una login tramite username e password, ottenendo quindi un token.

Potrà autenticarsi con il token (passandolo nell'header della chiamata come: Authorization: token), ricevuto in fase di login per utilizzare le API di:

- Login

- Creazione Utente

- Modifica Password

- Cancellazione Utente


Al termine del corso consiglio di tentare lo sviluppo di una API: findByUsername, partendo dal controller (quindi esposizione REST API), definizione modello request e response, service (gestione password), repository (accesso al DB) ed infine le eccezioni custom.

What You Will Learn!

  • Creazione progetto con Versione Stable di Spring Boot, REST, JPA, Swagger2 con token Spring Security password crypt encrypt
  • Crittografia Asimmetrica AES 256 salvataggio su MariaDB password criptata ed Anagrafica Utente
  • Guida alla configurazione e spiegazione in Debug Step-By-Step
  • Download della versione funzionante solo se ci si iscrive al corso. Funziona al primo click. Guida per la Configurazione

Who Should Attend!

  • Creare una applicazione demo strutturata dalla quale partire come modello per lo sviluppo di qualsiasi applicazione Java Backend con token