Trac: 簡単な計算問題 CAPTCHA を提示する MathCaptchaJa プラグイン
目次
概要
MathCaptchaJa プラグインは MathCaptchaPlugin の日本語対応を行った修正バージョン。Trac のスパム対策として簡単かつ効果的な CAPTCHA を導入したい人向け。
MathCaptcha プラグインの特徴
- anonymous ユーザーが Wiki の編集やチケット登録をする際に簡単な計算問題 CAPTCHA を提示する
- CAPTCHA の計算式は自動生成され、ページを表示するたびに更新される
- CAPTCHA に失敗した回数を記録し、スパムボットの試行による CAPTCHA 突破を防ぐ
- 管理者ユーザー (admin) および認証ユーザー (authenticated) では CAPTCHA は表示されない
オリジナルからの変更点
オリジナルの MathCaptcha.py を次のように修正。
- 計算式の日本語化 (海外スパムの排除に効果的)
- 文字列リソース (ガイダンス、エラーメッセージなど) の日本語化
- 計算式の答えの入力で全角数字を許容 (答えに含まれる全角数字を半角数字に変換)
- スパムとみなす CAPTCHA の失敗回数を若干増加 (CAPTCHA に不慣れなユーザーを考慮)
※ MathCaptchaJa プラグインのベース (オリジナルのバージョン) は MathCaptchaPlugin 4.0 (2010-07-15)。
使い方
- 以下のパーミッションの中から適切な権限を anonymous ユーザーに付与する
- 新規チケットの登録 (TICKET_CREATE)
- チケット属性の変更、コメントや添付ファイルの追加 (TICKET_MODIFY)
- 新規 Wiki ページの作成 (WIKI_CREATE)
- 既存の Wiki ページの編集 (WIKI_MODIFY)
- anonymous ユーザーは Wiki ページやチケットの入力内容を送信する前に、計算問題 CAPTCHA によって提示される計算式の答えを入力する
ダウンロード
- mathcaptcha-4.0-py2.7.egg (for Python 2.7)
- mathcaptcha-4.0-py2.6.egg (for Python 2.6)
インストール
管理コンソールまたは Easy Install を使用してインストールする。
管理コンソール
- 管理コンソール – [プラグイン] を表示する
- [プラグインをインストール] の [ファイルを選択] で mathcaptcha-4.0-py2.7.egg を選択して [インストール] ボタンをクリック
- 新しく追加された [mathcaptcha 4.0] セクションを展開する
- コンポーネントの MathCaptchaPlugin をチェックして [変更を適用] ボタンをクリック
※ 手動でインストールする場合は、mathcaptcha-4.0-py2.7.egg を /path/to/env/plugins ディレクトリにアップロードする。
Easy Install
%easy_install mathcaptcha-4.0-py2.7.egg
trac.ini の [components] セクションに以下の記述を追加してプラグインを有効にする。
[components] mathcaptcha.* = enabled
CAPTCHA について
CAPTCHA はコンピューターと人間を区別するための自動的なテストプログラム。主にスパムボット対策に用いられる。
CAPTCHA が提示するテストの種類は様々だが、一般的には次のようなテストが採用される。
- 変形や重ね合わせなどによって難読化された文字や数字の読み取り
- 画像に関する質問、複数の画像からの選択
- 常識問題や計算問題、論理パズルなどのクイズ
※ CAPTCHA の難易度が低いとスパムボットに突破される可能性が高まる一方で、難易度を高くし過ぎるとアクセシビリティやユーザビリティ低下の問題を招く。また CAPTCHA が提示する問題を解くのにストレスを感じるユーザーもいるため CAPTCHA が敬遠される場合もある。
reCAPTCHA
reCAPTCHA は代表的なフリーの CAPTCHA サービスの一つ。2009 年 9 月に Google によって買収された。
- 秋元@サイボウズラボ・プログラマー・ブログ: reCAPTCHA – キャプチャを利用した人力高性能OCR
- 秋元 ≫ GoogleがreCAPTCHAを買収
- Official Google Blog: Teaching computers to read: Google acquires reCAPTCHA
サポートする?
いただいたコメントは大変参考になります。ここまで読んでいただきありがとうございました。