Discourse 포럼에서 매일 소수이지만 일정한 수의 스팸 계정이 생성되고 있습니다. 많은 계정이 가짜 또는 무효한 이메일 주소를 사용하고 있는 것으로 보입니다.
다음과 같은 프로세스를 자동화하는 방법을 찾고 있습니다:
- 새 사용자가 계정을 생성하면 Discourse가 활성화/인증 이메일을 보냅니다.
- 활성화 이메일이 하드 바운스(hard bounce)로 확인되면, 활성화되지 않은 사용자 계정이 자동으로 삭제됩니다.
- 시스템은 바운스된 이메일 주소의 도메인을 기록합니다.
- 정의된 기간 내에 동일한 도메인을 사용하는 여러 새 계정이 하드 바운스로 확인되면, 해당 도메인이 자동으로 차단된 이메일 도메인 목록에 추가됩니다.
- Gmail, Outlook, Yahoo 등 일반적인 합법적인 이메일 제공업체는 자동 도메인 차단에서 제외되어야 합니다.
예를 들어, 몇일 이내에 suspicious-domain.example의 서로 다른 이메일 주소로 여러 계정이 생성되고, 모든 계정의 활성화 이메일이 하드 바운스로 확인되면, 해당 도메인은 결국 추가 계정 생성이 차단됩니다.
목표는 바운스 데이터를 자동화된 스팸 가입 식별을 위한 또 다른 신호로 활용하는 동시에, 존재하지 않는 이메일 주소로 생성된 활성화되지 않은 계정을 자동으로 정리하는 것입니다.
Discourse에는 이를 수행할 수 있는 플러그인이나 기존 기능이 현재 존재합니까? 만약 없다면, Discourse의 바운스 처리 프로세스에서 이 기능을 구현하기 위한 플러그인을 개발할 수 있는 후크(hook)가 제공됩니까?
안녕하세요 @LotusJeff
이 설정들을 확인해 보셨는지요? 일부 요구사항을 충족하는 데 도움이 될 것 같습니다:
**/admin/settings/**에서 다음 설정을 구성하세요.
| 설정 |
권장 값 |
효과 |
purge_unactivated_users_grace_period_days |
1 |
14일이 아닌 1일 후 비활성화된 계정을 삭제합니다. #2에서 요청한 것처럼 즉시 삭제되는 것은 아니지만, 지연 시간이 더 짧은 동일한 효과를 제공합니다. |
blocked_email_domains |
알려진 스팸 TLD/도메인을 수동으로 추가 |
알려진 스팸 발송자의 가입을 차단합니다 |
요청하신 것과 같이 완전히 자동화된 기능을 원하신다면 플러그인을 개발해야 할 것 같습니다(또는 제가 아는 한 현재 존재하지 않음), 아니면 새로운 워크플로 기능을 살펴보실 수 있습니다. 원하시는 기능이 이미 가능한지는 모르겠지만, 거의 매일 업데이트되고 있으니谁知道 
플러그인 개발을 고려하신다면 DiscourseEvent.on(:email_bounce)에 훅을 걸 수 있는 이벤트가 있습니다.
또한 Configure VERP to handle bouncing e-mails 도 참고해 보시는 것이 좋습니다.
감사합니다. 이미 VERP를 적용해 두고 있으며, 현재는 반송된 이메일을 수동으로 검토하고, 관련 계정을 삭제하며, 말씀해 주신 설정을 이용해 반복 위반 도메인을 차단된 이메일 도메인 목록에 추가하고 있습니다.
다음으로 워크플로(Workflows)를 살펴볼 필요가 있는 것 같습니다. Discourse의 또 다른 새로운 기능을 배우면서 이 프로세스를 얼마나 자동화할 수 있는지 확인해 보겠습니다. 
조금 전에 Workflow AI로 간단히 테스트해 봤는데, afaict(본인이 판단하기로는) 유망해 보였습니다. 진행 상황 알려주세요!
Lilly
(Lillian )
5
discourse-captcha가 활성화되어 있나요?
존재하지 않을 가능성이 높은 사후 조치나 반응형 솔루션 대신, 확립된 예방적 제어를 사용하세요.