Ho creato un'API RESTful di Flask che richiede una email / password e il flusso di login di Facebook. Probabilmente sarà necessario estenderlo in futuro per supportare più accessi social.
Ho scelto di autenticare gli utenti usando JWT.
Poiché desidero supportare più tipi di flussi di accesso, ho pensato di dover definire un tipo di sovvenzione personalizzato per ogni tipo di accesso.
Ho dato un'occhiata a Flask-JWT , ma questo non sembra supportare i tipi di sovvenzione personalizzati, nemmeno per i token di aggiornamento.
Poiché non sono riuscito a trovare un'altra implementazione di JSW di Flask, ho dovuto scrivere la mia. Il mio codice funziona, ma ho alcune preoccupazioni, considerando che non esiste un plugin Flask che soddisfi i miei requisiti.
- È una buona pratica del tutto definire i tipi di sovvenzione personalizzati? rfc6749 afferma che è supportato.
- Ho implementato correttamente il flusso di autenticazione del token di email / password / aggiornamento ( Figura 1 )?
- Ho implementato correttamente il flusso di autenticazione di Facebook ( Figura 2 )?
- Sto utilizzando uuid4 per generare token di aggiornamento. È una buona idea?