Se mantenete la sessione attiva non avrete alcun problema. Tuttavia, se provate ad accedere ora, cliccando su “Accedi” l’URL cambia in: /auth/failure?message=csrf_detected e otteniamo il messaggio di errore: Autorizzazione scaduta o avete cambiato browser. Riprovate..
Qualcuno sa se ci sono state recenti modifiche che potrebbero aver causato questa situazione?
Una domanda a margine: esiste un modo per tornare a una versione precedente? Ho cercato un po’ e il consenso è disabilitare i plugin (o il plugin specifico responsabile). Tuttavia, non posso disabilitare questo perché è proprio attraverso di esso che i miei utenti accedono alla piattaforma
Non è realmente supportato, ma se hai un backup puoi eliminare la directory dei dati di PostgreSQL, inserire un commit nella riga della versione in app.yml, ricostruire e ripristinare il backup.
Sì, ho eseguito un backup e sto cercando di ricostruire usando l’SHA della versione che avevo, dato che funziona in modo incerto.
Nel frattempo, ho ancora l’ultima versione stabile e sto cercando di capire se possiamo risolverla in qualche modo.
Non so se @david abbia qualche consiglio, come suggerito da @codinghorror, ma sono disposto a provare qualsiasi cosa, dato che i miei utenti sono bloccati (a meno che non abbiano mantenuto la sessione).
Aggiornamento rapido: Ho provato a usare la versione di backup con uno snapshot della macchina così com’era in quel momento (prima dell’aggiornamento). Cliccando su “Accedi” la pagina principale si ricarica due volte. Ho provato a ricompilare con l’esatto commit SHA che avevo allora, ma senza successo: errore DB Rake.
Ho cercato altri report sul problema LDAP, ma non ne sembra esserci. Potrebbe essere causato da una fonte esterna?
Problema risolto, individuata la causa radice, non correlata a Discourse (scusate ragazzi!). Il problema era che il certificato è stato aggiornato e servito tramite un HAP; prima non utilizzavamo un HAP e Discourse lo serviva autonomamente. Abbiamo dimenticato questo dettaglio, il che ha causato l’errore CORS.
Lezioni apprese:
Il rollback di Discourse non è un’opzione; è meglio avere un backup dell’intera macchina (fortunatamente era il nostro caso).
Non sono ancora riuscito a capire perché fosse così difficile ricostruire con uno SHA specifico seguendo le istruzioni lette qui; non sono riuscito a farlo.
È meglio servire sempre i certificati dall’HAP, ma non dimenticarsene. (Come nota per chiunque altro, è necessario aggiungere il flag 'set-header X-Forwarded-Proto https' perché Discourse ha il proprio NGINX, ed è lì che si verificava l’errore).
Il fatto che nessuno avesse segnalato lo stesso problema (anche considerando che si tratta di un caso limite, dato che il plugin non è ufficiale) indicava proprio questa direzione (Community come previsto :P).
Il problema si è manifestato solo in ritardo (al punto da non ricordare più la modifica al certificato) a causa della ricostruzione attivata dall’aggiornamento, ed è lì che si è verificato l’errore.
Ancora una volta, grazie e scusate per il disturbo!