L’errore nei log di Discourse sembra essere correlato a un altro utente (nota l’attributo name).
Per quanto riguarda l’utente che non riesce ad accedere, sospetto che il problema sia dovuto al fatto che require_activation è impostato su true nel payload SSO. Questo induce Discourse a tentare la creazione di un nuovo utente invece di cercare quello esistente. Dato che il suo account esiste già, viene generato l’errore.
Potrebbero esserci diverse ragioni per cui require_activation è true per un utente esistente; tuttavia, potresti andare al profilo WordPress dell’utente, spuntare questa casella e cliccare su “Aggiorna profilo”.
Quindi chiedigli di provare ad accedere nuovamente.
(Presumo qui che tu non abbia codice personalizzato su WordPress che utilizza il filtro discourse_email_verification)
P.S. Ti consiglio di oscurare gli indirizzi email negli screenshot (privacy dei dati, ecc.).
Per prima cosa, l’indirizzo email: Johnathan è un mio amico. Il suo indirizzo email è visibile sul suo sito web e non gli importa nulla della privacy. Altrimenti l’avrei oscurato.
Ho controllato l’indirizzo email verificato nel suo profilo ed era già stato verificato.
Ho deselezionato questa opzione:
E sembra aver risolto il problema.
No, non c’è codice personalizzato che utilizza il filtro discourse_email_verification.
Il problema si è ripresentato oggi per un altro utente, quindi vorrei comunque capire la causa, dato che preferiremmo che gli utenti non potessero modificare il proprio indirizzo email su Discourse.