Al momento ho un'app che fondamentalmente esegue due metà di un'API: un'API riposante per l'app Web e un'API di sincronizzazione per i client nativi (su tutto SSL).
L'app web è completamente basata su javascript ed è abbastanza simile ai client nativi in ogni caso, tranne che attualmente non funziona offline.
Quello che spero di fare è unire le API frammentate in un'unica API riposante. L'app Web attualmente autentica emettendo un cookie sul client mentre i client nativi funzionano utilizzando un'implementazione di token di accesso HMAC personalizzata. Ovviamente uno scenario chiave pubblico / privato per un'applicazione javascript è un po 'inutile.
Penso che la soluzione migliore sarebbe quella di creare un endpoint OAuth2 sull'API (come Instagram, ad esempio link ) che è utilizzato sia dalle app native sia dall'app Web.
La mia domanda è, in termini di sicurezza, in che modo un flusso OAuth2 implicito confronta (memorizzando il token di accesso nella memoria locale) per "proteggere" i cookie? Presumibilmente, sebbene SSL risolva l'attacco uomo nel mezzo, l'utente potrebbe teoricamente afferrare il token di accesso dalla memoria locale e copiarlo su un'altra macchina?