Esercitazioni di Spring Boot 9: è l’ora della sicurezza

Nei precedenti articoli abbiamo visto come creare delle API in stile RESTful per accedere ad un  ipotetico database di calciatori.
In una applicazione reale l’accesso non è mai consentito a chiunque, come in questo caso, ma riservato solo agli utenti regolarmente registrati e autenticati.
Vediamo come introdurre la sicurezza nei progetti basati su Spring Boot.
Questo compito è affidato a Spring Security che fa parte del vasto ecosistema di Spring.
Il primo passo, e anche l’unico in questo caso, è l’aggiunta di una specifica dipendenza nel pom.xml

Avviando l’applicazione dall’IDE o da riga di comando con mvn spring-boot:run e richiamando uno degli endpoint disponibili possiamo notare la presenza di un form di autenticazione.

spring-security2
Ma quali sono le credenziali da utilizzare visto che non abbiamo scritto alcuna riga di codice?
Spring Security di default crea l’utente “user” e genera una password ad ogni riavvio dell’applicazione.
Tale password è visibile unicamente nei log.

spring-security

Una volta inserite le credenziali possiamo visualizzare la lista dei calciatori senza alcun problema.

spring-security3

Le impostazioni di base sono le seguenti:

  • tutti i path richiedono l’autenticazione
  • è presente un form di login
  • è attiva la basic authentication
  • è disponibile un utente “user” con password rigenerata automaticamente ad ogni riavvio dell’applicazione
  • sono gestiti gli errori.

E’ evidente la poca praticità di una password che varia continuamente, per cui possiamo fare una piccola modifica per impostarla in maniera permanente cambiando anche il nome dell’utente nonchè il suo ruolo.

Basta aggiungere al file application.properties le seguenti righe

spring.security.user.name=mauro
spring.security.user.password=1234
spring.security.user.roles=admin

Ora possiamo autenticarci come mauro/1234.

Come al solito il codice è disponibile su GitHub.

Per ora è tutto. La prossima volta vedremo come personalizzare la configurazione per renderla più adatta ad un utilizzo reale.

ESERCITAZIONI DI SPRING BOOT

Lascia una risposta

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

Utilizzando il sito, accetti l'invio dei cookies da parte nostra. Maggiori informazioni

Questo sito utilizza i cookies per fornire la migliore esperienza di navigazione possibile. Continuando ad utilizzarlo senza modificare le impostazioni o cliccando su "Accetta" acconsenti al loro utilizzo.

Chiudi