login-register) richiede un reCAPTCHA v2 (invisibile) per l’accesso tramite email, l’accesso LDAP, la registrazione e la reimpostazione della password. Crea la chiave e leggi cosa fa ciascuna impostazione in reCAPTCHA; questa pagina spiega come inserirla in Kubernetes.
Configurazione
1
Site key nella ConfigMap
2
Secret key e chiave della cronologia dei dispositivi nel Secret
DEVICE_HISTORY_SECRET deve essere composto da 64 caratteri esadecimali; il container non lo genera.3
Applica e riavvia
Più repliche
Tutte le repliche devono condividereDEVICE_HISTORY_SECRET, cosa che avviene quando si trova nel Secret. Con valori diversi, un browser che ha superato la verifica su una replica riceverebbe di nuovo il captcha su un’altra. I limiti di frequenza vengono conteggiati in Redis su tutte le repliche.
Testato su Kubernetes
Contro un mock dell’endpoint di verifica di Google (considerato attendibile tramiteNODE_EXTRA_CA_CERTS da overleaf-certs), su Kubernetes 1.37, i nostri test end-to-end per reCAPTCHA vengono superati (13 casi): su una replica, accesso, registrazione e reimpostazione della password rifiutati ciascuno senza captcha o con un captcha non superato e accettati con uno superato, la cronologia dei dispositivi da DEVICE_HISTORY_SECRET che consente a un browser di saltare il captcha, e CAPTCHA_TRUSTED_USERS; su tre repliche dietro HAProxy, l’accesso LDAP con il captcha.
