Ho un back-end (API) e un front-end, ad esempio un server web, e ho utenti e provider di ID.
Il server web è fornito da un terzo aprile e potrebbe anche essere un'app mobile, ma in ogni caso, l'utente lo utilizza per accedere ai propri dati.
Generalmente gli utenti avranno bisogno dell'applicazione (Web of Mobile) per essere in grado di fare tutto per loro perché l'API rilascia solo risposte di basso livello in formato JSON. Pertanto, quando un utente richiede che un front end sia autorizzato, questo fornisce a tale front-end l'accesso completo a qualsiasi cosa l'utente possa fare.
Gli utenti si registrano e autenticano tramite i loro account Google / FB / Twitter etc in modo che l'API non debba preoccuparsi delle password e rendere più facile per gli utenti la registrazione.
Quando l'utente visualizza una risorsa, ad esempio i suoi messaggi o la cronologia dell'account o il profilo sul back-end, lo fa tramite un front-end.
Il front-end passa quindi la richiesta della risorsa all'API (che è implementata in modo REST-ish). La mia comprensione è che per far funzionare tutto questo sarebbe usato OAuth per autorizzare il sito Web a richiedere le informazioni private dell'utente.
Correggere le mie conoscenze: dopo la registrazione, l'utente accede al front-end. Il front-end recupera quindi le informazioni per l'utente dal back-end tramite "richieste HTTP autorizzate oAuth", (oAuth 2.0 per essere precisi)
Il back-end vede che la richiesta è autorizzata ma non sa chi è stato (presumibilmente lo è ancora) loggato durante questo processo? Quindi, come fa il back-end a sapere quale cassetta postale o profilo o cronologia delle transazioni devono essere pubblicati?
L'API codificherà la cassetta postale o la cronologia delle transazioni specificata nell'URI, ma in realtà la domanda è: come fa il backend a sapere che il front-end sta richiedendo la cassetta postale corretta per l'utente attualmente connesso?