Cronologia delle modifiche — PrestaWard Captcha
Questo changelog riassume, versione per versione, l’impatto sui negozi e sui team di e-commerce.
0.2.7
- Novità: modalità locale per modulo. La newsletter, il modulo di contatto e gli avvisi di disponibilità possono essere protetti solo con controlli locali (timestamp firmato, campo trappola, tempo minimo di invio di 4 secondi e limite di invii), senza caricare alcuno script di un fornitore né aver bisogno di chiavi. Ogni modulo mantiene la propria modalità (Disattivato, Osservazione o Protezione) e passa alla modalità Protezione solo dopo aver superato l’autotest in modalità Osservazione. È meno efficace contro i bot mirati rispetto a un provider e non va mai utilizzato per accesso, registrazione, ordini, recupero password, Back Office o commenti. Le statistiche mostrano quanti invii di ciascun modulo sono stati verificati localmente. Una pagina servita da una cache completa da più di sei ore potrebbe rifiutare l’invio; ricaricarla risolve il problema.
- Novità: domini di posta bloccati. Un elenco che crei tu (una regola per riga, un dominio esatto o un jolly per i suoi sottodomini, fino a 100 regole) viene applicato alla registrazione dei clienti, anche durante l’acquisto, e alla newsletter. Il controllo avviene prima di interpellare il provider e un’e-mail corrispondente viene respinta con un messaggio neutro che non rivela l’elenco. Nella sezione “Osservazione” viene registrato solo ciò che sarebbe stato respinto. Non vengono salvati né l’e-mail né il suo dominio: solo un contatore e un evento senza dati personali per ogni rifiuto.
- Novità: punteggio minimo di reCAPTCHA v3 per modulo. Se lo lasci vuoto, viene utilizzato il punteggio globale, quindi non cambia nulla finché non imposti un valore. Un valore non valido riporta il punteggio al valore globale.
- Novità: tema (chiaro, scuro o automatico) e dimensione (normale o compatta) del widget di reCAPTCHA v2 e Cloudflare Turnstile, anche nell’accesso al Back Office. I valori predefiniti mantengono l’aspetto attuale; reCAPTCHA v3 e v2 invisibile non mostrano il widget. In reCAPTCHA, «automatico» segue la combinazione di colori del visitatore.
- L'accesso al Back Office utilizza la stessa soluzione di riserva dei moduli dei clienti, ma solo finché il fornitore non è disponibile e il server lo conferma. Un fornitore che ha risposto «verifica fallita» viene comunque rifiutato come sempre. Ogni utilizzo viene registrato come «fallback used», un interruttore per negozio lo disattiva e la pausa temporanea dell’operatore rimane attiva. La schermata di accesso non si blocca mai: lo script segnala l’errore al server e poi invia comunque il modulo. Durante un’interruzione, questo accesso è più vulnerabile rispetto a un bot mirato; è consigliabile mantenere PrestaWard Authenticator come seconda barriera. La protezione contro gli errori di integrazione continua a non influire sul Back Office.
- Il pannello è suddiviso in schede (Riepilogo, Superficie, Fornitore e Statistiche e registro) e tiene conto solo della scheda aperta. La scheda Riepilogo mostra lo stato di ogni fornitore, le verifiche andate a buon fine e quelle fallite nelle ultime 24 ore, lo stato effettivo di ogni modulo e, al massimo, una riga di avviso che rimanda alla scheda in cui viene risolto il problema. Ogni scheda ha il proprio pulsante Salva e salva solo le impostazioni che mostra. Il pannello di assistenza di GO ON Agency ha una propria scheda, Assistenza, sempre l’ultima, mentre lo stato di Integrity si trova alla fine di tutte le schede.
- La scheda "Superficie" è stata ridisegnata: tabella dei moduli raggruppata, selettore che non taglia più il testo (prima mostrava «Desa») e pulsante "Salva" fuori dalla scheda di pausa temporanea, senza sovrapporvisi. Il tema e le dimensioni del widget si regolano in una sezione di questa scheda.
- Correzione dell’avviso «moduli attivati senza aver superato il test»: appariva con sei moduli anche se erano tutti disattivati. Ora conta solo i moduli che non sono in modalità Disattivato.
- Nelle nuove installazioni, le notifiche via e-mail relative agli incidenti sono disattivate finché non specifichi un indirizzo, in modo che la configurazione possa essere salvata fin da subito. Le installazioni aggiornate mantengono le loro impostazioni.
- Le e-mail relative agli incidenti (aperti e risolti) mostrano il logo del tuo negozio nell’intestazione (con il nome del negozio come testo alternativo) e un piè di pagina comune con il logo di GO ON Agency e la firma «PrestaWard by GO ON Agency», senza link né indirizzi di contatto. Il logo nel piè di pagina è un file del modulo stesso fornito dal tuo negozio.
- Correzione: il corpo dell’e-mail di segnalazione non mostra più codici interni (ad esempio «configuration_test» o «opened»): ora indica il modulo, la causa e lo stato con testi tradotti nelle nove lingue.
- Risolve un problema per cui un errore nella chiamata al provider bloccava un modulo del Front Office; le chiamate al provider dallo script del negozio sono protette allo stesso modo di quelle per l'accesso al Back Office.
- Aspetto unificato del pannello nei quattro moduli PrestaWard: intestazioni di sezione, schede dei moduli con bordi neutri e blocchi a scomparsa comuni, statistiche su un’unica riga e un logo GO ON Agency più grande nell’intestazione. Il pulsante principale assume ora un colore a tinta unita del marchio, senza sfumature.
- Corregge il fatto che, in PrestaShop 9, il tema di amministrazione mostrasse le schede sottolineate come link e i titoli delle sezioni in maiuscolo. Gli stili comuni lo neutralizzano solo all’interno del pannello di PrestaWard, quindi PrestaShop 1.7 e 8 hanno lo stesso aspetto di prima.
- Risolve il problema per cui, in PrestaShop 1.7, il foglio di stile del modulo veniva ignorato quando veniva registrato con il numero di versione nell’URL. Ora il file viene verificato e registrato senza parametri, così il nuovo aspetto appare nelle versioni 1.7, 8 e 9.
- Correzione: in PrestaShop 9, la sincronizzazione con Integrity verificava il token di sicurezza con un metodo che PrestaShop 9 non utilizza e che poteva causare un rifiuto. Ora la convalida avviene tramite il servizio di PrestaShop 9; in PrestaShop 1.7 e 8 la verifica rimane invariata.
- Quando non è possibile aggiornare la connessione con Integrity in quel momento, il pannello mostra un unico messaggio: la connessione salvata è ancora valida e verrà riprovata automaticamente. Le etichette di tutte le schede sono tradotte nelle nove lingue.
- La modalità locale ha un proprio limite di invii (da 1 a 50 ogni 10 minuti). L'aggiornamento copia il limite attuale dalla soluzione di riserva, quindi non cambia nulla dopo l'aggiornamento, e modificare uno dei due limiti non cambia più l'altro.
- Correzione: in PrestaShop 9, un captcha rifiutato (ad esempio, con una chiave del sito non valida in Protezione) mostrava solo il messaggio generico di PrestaShop relativo al dipendente o alla password. Il modulo ora mostra il proprio messaggio in tutte le versioni; PrestaShop 9 continua comunque ad aggiungere in seguito la sua riga generica.
- Risolve il problema per cui la connessione con Integrity si interrompeva nel contesto «tutti i negozi» del Back Office o quando un negozio diverso dal primo gestiva il test di registrazione. L’identità dell’installazione viene ora letta come un’unità dall’ambito globale (o dal negozio in cui è salvata) in qualsiasi contesto; l’aggiornamento trasferisce nell’ambito globale un’identità salvata in un negozio senza rigenerarla e, se non è possibile leggerla, lo stato di Integrity rimane invariato.
- L'intestazione del prodotto mostra nuovamente il logo di GO ON Agency e la firma «PrestaWard by GO ON Agency», senza link.
- Finché usi un provider, il suo token continua a essere richiesto esattamente come prima. Le superfici rilevate, le impostazioni salvate e il contratto con l’Integrity API non cambiano, mentre le nuove modalità di rifiuto o verifica di un modulo (modalità locale e domini bloccati) sono disattivate di default. L'aggiornamento non modifica nessuna tabella: aggiunge solo nuove impostazioni con valori che mantengono il comportamento attuale.
0.2.6
- Ogni form ha la propria modalità in ogni negozio (Disattivato, Osservazione o Protezione), invece di una modalità unica per tutto il negozio con l’aggiunta di interruttori. In questo modo puoi proteggere l’accesso al Back Office e tenere solo in osservazione il form di contatto. Un form passa a Protezione solo dopo aver superato l’autotest in Osservazione, e l’aggiornamento mantiene il comportamento attuale di ogni negozio.
- Protezione in caso di interruzione del servizio del provider (form dei clienti in modalità Protezione): se il server conferma che reCAPTCHA o Turnstile non sono utilizzabili, il form viene accettato solo se presenta un timestamp firmato, un campo trappola invisibile vuoto, alcuni secondi trascorsi dal caricamento della pagina e una frequenza normale di invio. Ogni utilizzo viene registrato nelle statistiche. È attiva per impostazione predefinita, può essere disattivata per negozio e l’accesso al Back Office non la utilizza mai.
- Modifica da tenere presente: con questa protezione attivata, un circuit breaker aperto non lascia più passare tutti gli invii, ma applica le stesse verifiche locali. Disattivala per mantenere il comportamento precedente.
- Prefiltro sul server (modalità Protezione): respinge i bot evidenti prima di contattare il provider, solo in presenza di prove positive (campo trappola compilato, timestamp falsificato, invio più veloce di quanto farebbe una persona o più di 30 invii per form e visitatore ogni 10 minuti). Può essere disattivato per negozio.
- I nuovi controlli non salvano nulla di identificabile: i visitatori vengono raggruppati in un insieme anonimo con una chiave che cambia ogni giorno, solo in un contatore che viene azzerato dopo due giorni.
- Nuovo pannello delle statistiche: invii consentiti e bloccati per modulo e per giorno (7, 14 o 30 giorni), andamento rispetto al periodo precedente, attivazioni della Protezione in caso di interruzione del provider, richieste scartate prima del provider, un indicatore di possibili falsi positivi e, nella sezione Osservazione, gli invii che sarebbero stati bloccati. Non contiene indirizzi né e-mail.
- Form personalizzati: un form che non viene riconosciuto automaticamente (checkout in una pagina, form del tema) può essere assegnato, per negozio, a una superficie protetta tramite un selettore CSS (fino a dieci). Il pannello avverte che la protezione è efficace solo se il form invia i propri dati a una pagina verificata dal modulo.
- Controllo degli errori di integrazione (form dei clienti in Protezione): se un form smette di inviare il token al server mentre il provider è attivo (a causa di un aggiornamento del tema, del proprio JavaScript o della cache della pagina), solo quel form passa a un’Osservazione temporanea e ricevi una segnalazione e un’e-mail. Torna in Protezione dopo 15 minuti senza il problema e tre token verificati. L’accesso al Back Office non viene mai compromesso e i bot evidenti continuano a essere respinti.
- L'aggiornamento crea una piccola tabella di conteggio e nuove impostazioni con valori sicuri, e mantiene le impostazioni e gli eventi esistenti.
- Il pannello di assistenza e diagnostica si trova proprio prima della sezione Integrity, come negli altri moduli PrestaWard, e nel contesto «tutti i negozi» non scompare più: indica che bisogna selezionare un negozio.
- Sincronizza con Integrity ogni volta che apri il pannello, con una richiesta in background che non rallenta mai la pagina e al massimo una volta al minuto per ogni negozio.
0.2.5
- Corregge il servizio di accesso al Back Office in PrestaShop 1.7. In PrestaShop 9, il controllo si limita al form di accesso al Back Office e non riguarda l’API di amministrazione.
- Smette di riprovare la registrazione su Integrity quando cambia la chiave di registrazione del negozio e mostra un avviso chiaro.
- Rinnova la politica firmata di Integrity prima che scada e mantieni quella in vigore se il rinnovo non va a buon fine.
- Corregge la chiave di politica inclusa affinché funzioni con PHP 7.1 e 7.2.
- Aggiunge il pannello di assistenza di GO ON Agency in nove lingue, con un rapporto diagnostico scaricabile che non include dati dei clienti né viene inviato automaticamente. Viene scaricato solo da un dipendente con autorizzazione di modifica e con un negozio selezionato.
- Il periodo di conservazione dei registri tecnici viene ora applicato davvero (30 giorni per impostazione predefinita, configurabile per negozio): finora venivano conservati senza limiti. Ogni negozio elimina quotidianamente i registri scaduti e gli incidenti non ne risentono.
- Dichiara la compatibilità a partire da PrestaShop 1.7.7.0, la versione più vecchia testata.
0.2.4
- Corregge l'invio dei dati di accesso amministrativi con Turnstile dopo aver risolto il CAPTCHA, mantenendo il pulsante che ha avviato l'invio.
- Corregge la prova di registrazione su PrestaShop 9 e migliora la diagnostica e i nuovi tentativi di Integrity.
0.2.3
- Versione non pubblicata, sostituita dalla 0.2.4.
0.2.2
- Impedisce che altri gestori JavaScript del tema avviino l’invio mentre il CAPTCHA è ancora in sospeso.
- Elimina gli stati di caricamento infiniti e le richieste effettuate prima di disporre di un token valido.
- Mostra il CAPTCHA quando apri i moduli di accesso o di registrazione che erano nascosti al caricamento della pagina.
0.2.1
- Ripristina il CAPTCHA visibile prima del primo tentativo di accesso nel Front Office e nel Back Office.
- Impedisce alla cache di mostrare un CAPTCHA obsoleto o errato dopo l'aggiornamento del modulo.
- Sostituisce il popup con un avviso accessibile, visibile e ottimizzato per i dispositivi mobili.
- Mantiene gli errori del Back Office nella schermata di accesso con un unico messaggio di errore, senza pagine bianche.
0.2.0
- Aggiunge Cloudflare Turnstile con credenziali cifrate e selezione indipendente per superficie.
- Collega ogni token alla sua azione protetta e aggiorna la sfida in caso di invii ripetuti.
- Migliora il rilevamento dei moduli di accesso, registrazione, recupero password, checkout, newsletter e avvisi.
- Introduce una pausa operativa temporanea, limitata e sottoposta ad audit, senza indebolire la politica firmata di Integrity.
- Aggiorna il pannello, il suo design responsive e le traduzioni nelle nove lingue.
- Rafforza la persistenza fail-closed dell'ultima politica di Integrity verificata.
0.1.2
- Distingue i picchi automatizzati dagli errori operativi ed evita gli avvisi duplicati.
- Chiude automaticamente gli incidenti di traffico automatizzato dopo un periodo di calma.
0.1.1
- Controlli di disponibilità per superficie prima di poter attivare la Protezione.
- Stato operativo, cronologia degli incidenti, filtri, impaginazione e pulizia.
- Telemetria di stato limitata e integrazione con l’heartbeat di Integrity.
0.1.0
- Prima versione candidata al rilascio.
- Protezione indipendente per superficie e negozio.
- Integrazione con reCAPTCHA v2 e v3.
- Registrazione, politica firmata e heartbeat di PrestaWard Integrity.
- Verifica degli aggiornamenti ed esperienza visiva comune dell’ecosistema.
- Compatibilità con più versioni e catalogo completo in nove lingue.