Sto lavorando su un plugin per wordpress che fornisce un sistema di thread di commento simile a disqus (ma diverso).
Per accedere (per inviare commenti) il flusso di lavoro è simile a questo:
- L'utente fa clic sul log-in sul blog wordpress
- Si apre una finestra popup con il modulo di login sul backend api per il mio plug-in (un altro sito)
- L'utente accede e utilizza PostMessage. Ricevo un token di accesso.
Ora con quel token di accesso quando esegue un'azione come upvoting o postare un commento invierò una richiesta di post al mio backend API insieme al token e se il token è valido aggiungo il commento / upvote al database.
Ma non sono sicuro di come gestire in modo sicuro il token utente: il mio primo pensiero è stato inserirlo in un cookie, ma qualsiasi blog maligno di wordpress può eseguire alcuni js per rubare automaticamente tutti i token dagli utenti che accedono ai loro siti web.
E dal momento che tutto il logging sta accadendo nella parte frontale del blog wordpress, non vedo come posso memorizzare i dati in modo che l'API backend possa accedervi quando l'utente fa un'azione ma non un blog malevolo .
Come posso archiviare in modo sicuro quel token? Ho pensato di incorporare il sito web in un iframe per fare affidamento sulle variabili di sessione, ma non sono sicuro di quanto sia sicuro.