Se non configuri correttamente l’impostazione sso provider secrets quando usi Discourse come provider SSO, ricevi un messaggio generico di Errore 500 nel browser e un messaggio di errore confuso nei log:
TypeError (nessuna conversione implicita di nil in String) /var/www/discourse/lib/single_sign_on.rb:114:in `hexdigest’
In base al percorso di codice seguito, questo sembra essere un errore accidentale e penso che questo messaggio di errore dovrebbe essere migliorato:
Nei log, indicare che il provider SSO è configurato in modo errato o che è stato tentato un accesso non autorizzato
Nel browser, mostrare un messaggio di errore più appropriato (probabilmente HTTP 400 Bad Request o 403 Forbidden)
Maggiori dettagli qui (forse un amministratore/moderatore può spostare quel post in questo nuovo thread per me):
Nota che questo si riferisce al contesto del plugin wp-discourse per WordPress, ma il problema non ha nulla a che vedere specificamente con questo plugin.
Ciò si verifica se l’impostazione viene lasciata vuota (più precisamente, credo che accada ogni volta che non esiste un segreto per il dominio associato a una richiesta SSO in ingresso).