Sto scrivendo un'applicazione con un front end in emberjs e backend/server-side in un server nodejs. Ho emberjs configurato in modo che un utente possa accedere/registrarsi con un Oauth di terze parti (google, twitter, Facebook). Ho un back-end scritto nel server expressjs che ospita le API RESTful.Strategia token JWT per frontend e backend
Non ho il DB connesso a emberjs e non penso che dovrei comunque poiché è strettamente codice lato client. Sto pianificando di utilizzare JWT per comunicare tra lato client e lato server. Quando un utente accede con il proprio cred di oauth, ottengo un oggetto JSON dal provider con uid, nome, login, access_token e altri dettagli.
Sto lottando con la scelta di una strategia su come gestire la registrazione dell'utente. Non esiste un processo di iscrizione poiché è OAuth. Quindi il flusso è se l'utente non è nel mio db, crealo. Non supporto l'autenticazione email/password. Quale sarebbe il flusso quando un utente accede per la prima volta a un provider OAuth? Gli emberjs dovrebbero inviare tutti i dettagli al back-end ad ogni accesso in modo che il back-end possa aggiungere nuovi utenti al db?
Cosa dovrebbe fare parte del mio corpo JWT? Stavo pensando che uid e fornitore hanno fornito un token di accesso. Un problema a cui posso pensare è che il token di accesso specifico del provider può cambiare. L'utente può revocare il token dal sito del provider e registrarsi di nuovo con emberjs.
Sono aperto a scrivere il front-end in qualsiasi altro framework lato client javascript se rende più semplice.
Sei dopo una descrizione su come farlo o tutto il codice? Nota, ember e node sono perfettamente adatti per questo, lo stack tecnologico per client e backend non dovrebbe fare alcuna differenza sostanziale per la soluzione. – Harry
Sto cercando un flusso di processo su come i vari componenti dovrebbero comunicare in quale fase. Non ho bisogno del codice – ed1t