reCAPTCHA
Tier: Free, Premium, Ultimate
Offering: Self-managed, GitLab Dedicated
GitLab은 스팸 및 남용에 대비하기 위해 reCAPTCHA를 활용합니다. GitLab은 가입 페이지에서 CAPTCHA 양식을 표시하여 봇이 아닌 실제 사용자가 계정을 생성하려는 것을 확인합니다.
구성
reCAPTCHA를 사용하려면 먼저 사이트 및 개인 키를 생성하세요.
- Google reCAPTCHA 페이지로 이동합니다.
- reCAPTCHA v2 키를 얻으려면 양식을 작성하고 제출을 선택합니다.
- 관리자로서 GitLab 서버에 로그인합니다.
- 왼쪽 사이드바에서 아래쪽으로 스크롤하여 관리 영역을 선택합니다.
- 설정 > 보고를 선택합니다.
- 스팸 및 안티봇 보호를 확장합니다.
- reCAPTCHA 필드에 이전 단계에서 얻은 키를 입력합니다.
- reCAPTCHA 사용 확인란을 선택합니다.
- 비밀번호로 로그인할 때 reCAPTCHA를 사용하려면 로그인용 reCAPTCHA 사용 확인란을 선택합니다.
- 변경 사항 저장을 선택합니다.
- 스팸 확인을 바로 하도록 만들고
recaptcha_html
를 반환하도록 응답을 트리거하려면: -
app/services/spam/spam_verdict_service.rb
를 엽니다. -
#execute
메서드의 첫 번째 줄을return CONDITIONAL_ALLOW
로 변경합니다.
공개 프로젝트의 이슈보기를 확인해야 합니다. 이슈를 처리하는 경우 해당 문제는 공개 상태여야 합니다.
사용자 로그인에 대한 reCAPTCHA HTTP 헤더 사용 설정
사용자 인터페이스에서 사용자 로그인에 대한 reCAPTCHA를 활성화하거나 X-GitLab-Show-Login-Captcha
HTTP 헤더를 설정하여 로그인할 수 있습니다.
예를 들어, NGINX에서는 다음과 같이 proxy_set_header
구성 변수를 통해 이 작업을 수행할 수 있습니다:
proxy_set_header X-GitLab-Show-Login-Captcha 1;
Omnibus GitLab에서는 /etc/gitlab/gitlab.rb
를 통해 이 작업을 구성할 수 있습니다:
nginx['proxy_set_headers'] = { 'X-GitLab-Show-Login-Captcha' => '1' }