스팸 보호 및 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에 스팸/CAPTCHA 지원을 추가할 때 발생할 수 있는 다양한 시나리오로, UI가 JavaScript API 기반 (Vue 또는 일반 JavaScript)인지 또는 HTML 폼 (HAML) 기반인지에 따라 달라집니다.

또한 새로운 기능에 대해 매뉴얼 탐색 테스트를 수행해야 합니다. 자세한 내용은 탐색적 테스팅을 참조하세요.

스팸 관련 모델 및 API 필드

여러 수준의 스팸 플래그 지정이 스팸 처리 방법을 결정합니다. 이러한 수준들은 Spam::SpamConstants에서 참조되며, 이러한 값은 Spam::SpamActionService#perform_spam_service_check와 같은 응용 프로그램의 여러 위치에서 사용됩니다.

가능한 값으로는 다음이 있습니다:

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

관련 주제