2009-12-18 2 views
1

나는 사용자 남용을 유발할 수있는 웹 응용 프로그램, 특히 스팸 코멘트/계정에서 작업하고 있습니다. 나는 RECAPTCHA가 가짜 사용자에 관해서는 봇을 돌볼 것이라고 알고 있지만, 계정을 만들고 그 스팸 코멘트를 오토 파일럿에 넣는 사용자는 아무 것도하지 않을 것입니다 (트위터에서 수없이 보았던 것처럼) .레일에서 사용자 남용 처리하기

내가 생각한 솔루션은 모든 사용자가 다른 사용자를 신고하고 신고 된 사용자 (부울 속성) 목록을 관리자 만 액세스 할 수있는 사용자 색인 작업에 표시하도록하는 것입니다. 그런 다음 신고 된 사용자는 금지 (다른 부울 속성) 또는 경고 표시를 해제 할 후보가 될 수 있습니다. 금지 된 사용자는 여전히 사이트에 액세스 할 수 있지만 크게 축소 된 권한을 갖습니다. 어떤 이유로 사용자를 완전히 삭제하고 싶지 않습니다.

그러나 생각해봤을 때 신고 된 사용자 목록을 통해 금지 또는 불필요한 항목을 결정하는 것이 잠재적으로 관리자에게는 시간이 많이 걸릴 수 있음을 알았습니다. 누군가를 고용하여 짧은 시간 내에 사용자의 불법/금지를 피하는 것이 더 자동화되고 우아한 방법일까요?

답변

1

"웹 2.0"이전에는 웹 사이트가 관리자에 의해 검토되었습니다. 이제 목표는 지역 사회가 스스로를 조정할 수있게하는 것입니다. StackOverflow 자체는 환상적인 사례 연구입니다. reputation system을 사용하면 사용자가 신뢰할 수있는 것으로 입증되면서 더 많은 "관리"작업을 수행 할 수 있습니다. 사용자가 서로 플래그를 지정하도록 허용하는 경우 이미이 경로에 있습니다. 시스템의 세부 사항 (누가 플래그를 지정하고, 표시를 해제하고, 금지 할 수 있는지)에 대해서는 다양한 성공한 온라인 커뮤니티 (StackOverflow와 같은)를보고 어떻게 작동하는지, 얼마나 성공적인지 확인해야한다고 말하고 싶습니다. 결국에는 모든 공동체가 다르기 때문에 시행 착오를 거쳐야 할 것입니다.

코드를 작성하려면 스팸 발송자가 일반적으로 사용하는 패턴 (예 : 여러 페이지에 동일한 댓글이 게시 됨)을 찾는 스크립트를 만들 수 있습니다.하지만이 목표를 달성하는 커뮤니티가 성장해야한다고 생각합니다. 너를 위해서. 이것은 프로그래밍보다는 계획에 관한 것일 수 있습니다.

+0

나는이 아이디어가 정말 마음에 든다. 무작위 사용자가 다른 사용자에게 와플하지 말라고하고 싶지 않았다. StackOverflow의 명성 시스템 역시 정말 좋아합니다. 제안 해 주셔서 감사합니다! –

6

신고 된 사용자와 보고서를 제출 한 사용자가 모두 포함 된 abuses라는 테이블을 만들 것입니다. 플래그가 지정된 부울 필드 대신 "abuse_count"와 같은 카운터 캐시 열을 사용하는 것이 좋습니다. 이 열이 미리 정의 된 값에 도달하면 자동으로 사용자를 "금지"할 수 있습니다.

+0

큰 제안! 나는 이것을 구현할 수도 있습니다. –

1

일부 정교한 스패머는 보상이 충분히 높다고 느끼면 보안 문자를 깨고 자신의 시간을 보내고 있습니다. 또한 훌륭한 레일 플러그인 (aaaismet)과 같은 스팸 서버를 살펴보아야합니다 (https://github.com/joshfrench/rakismet).

defensio (https://github.com/thewebfellas/defensio-ruby)와 한 번 발견 된 보석은 일반적인 블로그 스팸을 탐지하는 데 꽤 효과가 있었지만 더 이상 찾을 수는 없었습니다.

관련 문제