gitlab-org--gitlab-foss/doc/integration/recaptcha.md
Stan Hu 9b48d9f43f Show a reCAPTCHA on signin page if custom header is set
This will only be displayed if `X-GitLab-Show-Login-Captcha` is set as an HTTP
header.
2018-06-21 15:37:34 -07:00

1.2 KiB

reCAPTCHA

GitLab leverages Google's reCAPTCHA to protect against spam and abuse. GitLab displays the CAPTCHA form on the sign-up page to confirm that a real user, not a bot, is attempting to create an account.

Configuration

To use reCAPTCHA, first you must create a site and private key.

  1. Go to the URL: https://www.google.com/recaptcha/admin

  2. Fill out the form necessary to obtain reCAPTCHA keys.

  3. Login to your GitLab server, with administrator credentials.

  4. Go to Applications Settings on Admin Area (admin/application_settings)

  5. Fill all recaptcha fields with keys from previous steps

  6. Check the Enable reCAPTCHA checkbox

  7. Save the configuration.

Enabling reCAPTCHA for user logins via passwords

By default, reCAPTCHA is only enabled for user registrations. To enable it for user logins via passwords, the X-GitLab-Show-Login-Captcha HTTP header must be set. For example, in NGINX, this can be done via the proxy_set_header configuration variable:

proxy_set_header X-GitLab-Show-Login-Captcha 1;

In GitLab Omnibus, this can be configured via /etc/gitlab/gitlab.rb:

nginx['proxy_set_headers'] = { 'X-GitLab-Show-Login-Captcha' => 1 }