> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# reCAPTCHA

> Hoe bescherm je inloggen, registratie en het opnieuw instellen van wachtwoorden met Google reCAPTCHA?

> [!NOTE]
>
> Deze functie is ontwikkeld door [ayaka-notes/ayakaleaf-pro](https://github.com/ayaka-notes/ayakaleaf-pro) en is beschikbaar vanaf v6.4.0.

Het inloggen met e-mailadres en wachtwoord, het inloggen via LDAP, registratie en het opnieuw instellen van wachtwoorden kunnen om een Google reCAPTCHA v2 (onzichtbaar) vragen. Dit staat standaard uit. De meeste gebruikers zien niets: de controle wordt uitgevoerd wanneer ze op de knop drukken, en Google toont alleen een afbeeldingsuitdaging wanneer het de aanvraag verdacht vindt. SAML- en OIDC-logins en accounts die door een beheerder zijn aangemaakt, worden niet beïnvloed.

1. Maak in de [reCAPTCHA-beheerconsole](https://www.google.com/recaptcha/admin) een sleutel aan van het type **reCAPTCHA v2**, **Invisible reCAPTCHA badge**, en voeg het domein van je instantie toe. Een domein omvat ook de subdomeinen ervan, bijv. `example.com` omvat `latex.example.com`.
2. Stel de twee sleutels in `config/variables.env` in en voer `bin/up` uit:

```text theme={null}
RECAPTCHA_SITE_KEY=<site key>
RECAPTCHA_SECRET_KEY=<secret key>
```

| Variabele | Standaard | Doel |
| - | - | - |
| `RECAPTCHA_SITE_KEY` | Niet ingesteld | Schakelt de captcha in voor inloggen, inloggen via LDAP, registratie en het opnieuw instellen van wachtwoorden. |
| `RECAPTCHA_SECRET_KEY` | Niet ingesteld | Geheime sleutel van dezelfde reCAPTCHA-sleutel, die de server gebruikt om de antwoorden te controleren. |
| `RECAPTCHA_ENDPOINT` | `https://www.google.com/recaptcha/api/siteverify` | Waar de server de antwoorden controleert. Gebruik `https://www.recaptcha.net/recaptcha/api/siteverify` als `www.google.com` niet bereikbaar is. |
| `CAPTCHA_TRUSTED_USERS` | Niet ingesteld | Door komma's gescheiden e-mailadressen die de server doorlaat zonder de captcha te controleren. |
| `CAPTCHA_TRUSTED_USERS_REGEX` | Niet ingesteld | Een reguliere expressie voor zulke e-mailadressen; deze moet overeenkomen met het volledige e-mailadres. |
| `DEVICE_HISTORY_SECRET` | Niet ingesteld | 64 hexadecimale tekens, bijv. van `openssl rand -hex 32`. Laat een browser die met een e-mailadres heeft ingelogd de captcha voor dat e-mailadres 90 dagen overslaan. Als dit niet is ingesteld, krijgt elke login de captcha. |

* De pagina's laden het reCAPTCHA-script van `www.recaptcha.net`, wat ook werkt waar `www.google.com` geblokkeerd is.
* Registratie en het opnieuw instellen van wachtwoorden vragen er elke keer om. Het inloggen via LDAP vraagt er ook elke keer om, ook met `DEVICE_HISTORY_SECRET`: het verstuurt een gebruikersnaam, geen e-mailadres.
* Inlogpogingen blijven ook beperkt: 20 pogingen per minuut per IP-adres en 10 pogingen per 2 minuten per e-mailadres.
* Ayakaleaf Pro controleert alleen of Google het antwoord accepteert. Scores en drempelwaarden van reCAPTCHA v3 worden niet ondersteund, en Google bepaalt wanneer er een uitdaging wordt getoond.
* Om het uit te proberen voordat je een sleutel hebt, gebruik je de [testsleutels](https://developers.google.com/recaptcha/docs/faq) van Google: elke controle slaagt en de widget toont een waarschuwing, dus gebruik ze niet in productie.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.