Sto creando un api rest con symfony 4 e api platform.
Vorrei capire che differenza c'è tra l'uso di un token di autenticazione jwt e invece outh nella filosofia di autenticazione di un progetto.
MI sembra di capire che la differenza stia in quello che deve fare e puo fare il client(nel mio caso una web app react native)
Da quel che ho capito se l'uso che ne fai è personale o della tua società possa andare benissimo il jwt.
e io devo proteggere un api usata sicuramente per adesso molto poco con un sistema di sicurezza
Ma, cosa fa outh che non si puo fare con jwt?
io vorrei stare lontano almeno per l'inizio da una complessità eccessiva e quindi sto utilizzando jwt come da questo tutorial https://symfonycasts.com/screencast/api ... ction-docs e sto cercando innanzitutto di capire in modo esaustivo jwt anche con l'uso di altri tutorial e documentazione.
ma sto cercando di capire per curiosità cosa fa outh che non si puo fare con jwt.
outh preso da wikipedia
OAuth è un protocollo di rete aperto e standard, progettato specificamente per lavorare con l'Hypertext Transfer Protocol (HTTP). Essenzialmente consente l'emissione di un token di accesso da parte di un server autorizzativo ad un client di terze parti, previa approvazione dell'utente proprietario della risorsa cui si intende accedere.[1]
Questo meccanismo, detto di "access delegation" (delega di accesso), è utilizzato da compagnie quali: Amazon, Google, Facebook, Microsoft, Twitter, Dropbox per consentire all'utente di condividere informazioni circa il proprio account con altre applicazioni o siti web. È comunemente utilizzato come modalita' per gli utenti in Internet per garantire alle applicazioni ed ai siti web l'accesso alle proprie informazioni senza fornire loro alcuna password.
Tale protocollo permette l'autorizzazione di API di sicurezza con un metodo standard e semplice in varie situazioni: applicazioni "mobile", applicazioni "web", applicazioni per personal computer.
OAuth logo
Per gli sviluppatori di applicazioni è un metodo per pubblicare e interagire con dati protetti. OAuth garantisce ai service provider l'accesso da parte di terzi ai dati degli utenti proteggendo contemporaneamente le loro credenziali. Per esempio permette all'utente di dare ad un sito, chiamato consumer, l'accesso alle informazioni presenti su un altro sito, detto service provider, senza condividere la propria identità.
Io vorrei distribuire la mia webapp (che è una semplice app di visualizzazione prodotti e prezzi in modo catalogo) su google play e vorrei che potesse essere utilizzata da qualsiasi persona che la scarica.
chiaramente un utente deve autenticarsi per usare l'app con un user e una password.
a me sembra che vada benissimo jwt e che anzi usare outh sia un errore di progettazione per quello che devo fare.
la domanda quindi è perchè e alla base di che richieste di progettazione sia meglio usare outh?
Grazie.