La mia configurazione per OAuth di base si sta comportando in modo piuttosto strano. Inizialmente ho riscontrato alcuni errori durante la configurazione, che ho poi risolto. Tuttavia, ora vedo che il flusso procede da Discourse all’endpoint di autorizzazione di Cognito, poi al callback di Discourse e infine a /login di Discourse. Non ci sono avvisi o errori nei log; anzi, controllando i log, vedo che c’è stata una chiamata JSON di successo per recuperare i dati dell’utente.
Considerando che sembra esserci un token valido e che i dati JSON sono stati caricati correttamente, mi aspetterei che l’account utente venga registrato con successo. Invece, l’utente viene reindirizzato alla pagina di accesso.
Purtroppo, quelle informazioni risultano vuote e non possiamo confermare nulla senza inserire tutti i loro dati.
Inoltre, è possibile confermare automaticamente l’utente? La sua email è già verificata dal nostro lato e vorrei rendere questa esperienza il più fluida possibile per i nostri utenti.
Non è ancora possibile saltare il popup, ma tutti i campi dovrebbero essere compilati automaticamente con i dati provenienti dal tuo provider di identità.
Quali sono i valori delle tue impostazioni oauth2? Prendiamo ad esempio oauth2_json_email_path.
Inoltre, puoi condividere la riga completa “user_json” dal log, così possiamo vedere tutte le chiavi. (sentiti libero di oscurare gli indirizzi email)
I dati minimi necessari per collegare l’account a un account Discourse sono solo l’id. Tuttavia, Discourse richiede un nome utente e un indirizzo email. Ecco perché viene visualizzato il modulo di registrazione.
Se è possibile aggiungere queste informazioni all’API OAuth, si renderà il processo molto più fluido per i tuoi utenti