Comando per disabilitare l'autenticazione a due fattori

Hello everyone,
I have mistake that i delete Google Authentication Discourse on Mobile so Now i can’t login to Discourse.
My question is … Can we disable Two Factor Authentication by command line SSH ?
Thank you!

Cosa è successo ai tuoi codici di backup?

Ho eliminato la mia autenticazione Google

E non ho salvato il codice di backup

Sì, puoi farlo aggiornando l’impostazione del sito enforce_second_factor a “no”. Apri la console di Rails ed esegui:

 SiteSetting.enforce_second_factor = "no"

Le opzioni disponibili per questa impostazione sono “no”, “staff” e “all”.

Voglio disabilitare l’autenticazione a due fattori per tutto l’account Discourse

Sono un principiante e ho lo stesso problema. Ho disattivato l’autenticazione a due fattori sul mio telefono senza salvare il codice di backup.
Attualmente non riesco ad accedere all’amministratore. Al momento, non ho altro personale che possa disattivarlo dalla dashboard.
Qualcuno può spiegare meglio come usare questo comando? :

Grazie

Per procedere, è necessario disporre dell’accesso al terminale SSH sul server su cui è in esecuzione Discourse. Ce l’hai?

Sì, ce l’ho, ma non so come usarlo con quel comando. Devo andare nella console di Rails? In realtà, non so come funziona Rails.

Per accedere alla console di Rails, effettua l’accesso via SSH al tuo server. Per farlo, apri un terminale sul tuo computer ed esegui:

ssh root@<your_forum_ip_address>

Sostituisci <your_forum_ip_address> con l’indirizzo IP del tuo sito Discourse.

Se il comando ha esito positivo, vedrai un prompt simile a questo. Al posto della parola testeleven verrà visualizzato il tuo indirizzo IP o il nome del droplet:

root@testeleven:~#

Digita cd /var/discourse e premi Invio.

Ora digita ./launcher enter app e premi Invio.

Dovresti vedere un prompt che termina in modo simile a questo: /var/www/discourse#

A quel prompt, digita rails c e premi Invio. Dovresti ora vedere un prompt simile a questo: pry(main)> . Questa è la console di Rails.

Per disabilitare l’autenticazione a due fattori forzata, digita SiteSetting.enforce_second_factor="no" e premi Invio.

Per uscire dalla sessione SSH, dovrai digitare la parola exit nel terminale tre volte. La prima volta per uscire dalla console di Rails, la seconda volta per uscire dal contenitore Docker, la terza volta per uscire dalla sessione SSH.

Grazie, le istruzioni sono molto chiare e dettagliate. Ho seguito questi passaggi, ma mi viene ancora richiesta l’autenticazione a due fattori durante l’accesso. Non so cosa stia sbagliando?

root@hoi-dap:/var/discourse# ./launcher enter app
root@hoi-dap-app:/var/www/discourse# rails c
[1] pry(main)> SiteSetting.enforce_second_factor='no'
=> "no"
[2] pry(main)> exit
root@hoi-dap-app:/var/www/discourse# exit
logout

Spiacente, impostare SiteSetting.enforce_second_factor = "no" non risolverà il tuo problema. Devi rimuovere il record del secondo fattore per il tuo utente.

Per farlo, accedi alla console di Rails, quindi devi trovare l’ID del tuo utente. Per farlo, esegui:

id = User.find_by(username: '<your_username>').id

Sostituisci <your_username> con il tuo nome utente Discourse. Assicurati di mantenere le virgolette. Quando esegui il comando, dovresti vedere restituito un numero. Quel numero è il tuo ID utente. È stato assegnato alla variabile id.

Successivamente, devi trovare il record UserSecondFactor associato al tuo utente. Questo comando utilizza la variabile id impostata con il primo comando:

second_factor = UserSecondFactor.find_by(user_id: id)

Quando esegui quel comando, dovresti vedere un output nella console che mostra il tuo record del secondo fattore.

Ora elimina il record:

second_factor.destroy

Puoi uscire dalla console dopo aver eseguito quel comando. Dovresti essere in grado di accedere al tuo sito dopo averlo eseguito.

Facci sapere se hai problemi con questo.

Grazie mille, funziona benissimo.
Tuttavia, non ho usato il comando second_factor.destroy. Invece, ho preso il campo dati per inserire manualmente l’autenticatore e ricreare il codice di autenticazione a due fattori.
Sì, ha funzionato perfettamente. Per maggiore sicurezza, ricreerò il nuovo validatore.
Grazie.