스팸 보호 및 CAPTCHA

이 가이드는 GitLab 애플리케이션의 새로운 영역에 스팸 보호 및 CAPTCHA 지원을 추가하는 방법에 대한 개요를 제공합니다.

새로운 영역에 스팸 보호 및 CAPTCHA 지원 추가

이 지원을 추가하려면, 해당 가능한 영역을 구현해야 합니다:

  1. 모델 및 서비스: 스팸 또는 CAPTCHA API 및 UI 지원을 추가하기 위해 필요한 백엔드 코드의 기본 전제 조건 변경입니다. 이 기능은 아직 지원되지 않습니다.

  2. REST API: Grape REST API 엔드포인트에 스팸 또는 CAPTCHA 지원을 추가하기 위해 필요한 변경 사항입니다. 관련된 REST API 문서를 참조하십시오.

  3. GraphQL API: GraphQL 변이에 스팸 또는 CAPTCHA 지원을 추가하기 위해 필요한 변경 사항입니다. 관련된 GraphQL API 문서를 참조하십시오.

  4. 웹 UI: UI가 JavaScript API 기반(Vue 또는 일반 JavaScript)인지 또는 HTML 폼(HAML) 기반인지에 따라 웹 UI에 스팸/CAPTCHA 지원을 추가할 때 발생하는 다양한 가능한 시나리오입니다.

또한 새로운 기능에 대한 수동 탐색 테스트를 수행해야 합니다. 더 많은 정보는 탐색 테스트를 참조하십시오.

스팸 관련 모델 및 API 필드

여러 수준의 스팸 플래깅이 스팸 처리 방식을 결정합니다. 이러한 수준은 Spam::SpamConstants에서 참조되며, 애플리케이션의 여러 곳에서 사용됩니다. 예를 들어, Spam::SpamActionService#perform_spam_service_check와 같은 곳입니다.

가능한 값은 다음과 같습니다:

  • BLOCK_USER
  • DISALLOW
  • CONDITIONAL_ALLOW
  • OVERRIDE_VIA_ALLOW_POSSIBLE_SPAM
  • ALLOW
  • NOOP

관련 주제