--- title: Flarum --- # Flarum CaptchaLa 公式 Flarum 拡張。フォーラム上で bot が狙いやすいアクション — 登録、ログイン、パスワード再設定、投稿 — に CAPTCHA 検証を追加し、管理画面でアクション単位のトグルを提供します。 ## 保護対象 以下は `Admin → Extensions → CaptchaLa` の独立したトグルです。 - 新規登録 - ログイン - パスワード再設定 - 投稿への返信 - 新規ディスカッション - プロフィール編集 SSO / Auth Sync プロバイダーで認証済みのセッションは除外されます — 後述の [SSO / Auth Sync](#sso-auth-sync) を参照。 ## インストール ### 1. 拡張を導入 Flarum のインストールルートから: ```bash composer require captchala/flarum ``` または `Admin → Extension Manager` の **Install** 欄に `captchala/flarum` を貼り付け。対応バージョン: Flarum ≥ 1.8、PHP ≥ 8.1。 ### 2. 管理画面で有効化 `Admin → Extensions` を開き、**CaptchaLa** を見つけて **Enable** をクリック。 ### 3. 設定 拡張の設定パネル: 1. [`dash.captcha.la`](https://dash.captcha.la) の **App Key** と **App Secret** を貼り付け。 2. 保護するアクションを有効化。 3. 保存。 ## 設定項目 設定は Flarum 標準の settings テーブルに `captchala.*` プレフィックスで保存されます。 | 設定項目 | 型 | 既定値 | 説明 | | --- | --- | --- | --- | | App Key | string | — | CaptchaLa ダッシュボードの公開キー(`cl_pub_…`)。必須。 | | App Secret | string | — | サーバーシークレット。必須。サーバー側でのみ `/v1/validate` の呼び出しに使用。 | | 登録を保護 | bool | `true` | サインアップ時にチャレンジ。 | | ログインを保護 | bool | `false` | ログインモーダルでチャレンジ。多くのフォーラムはレート制限でログインを守るため既定では OFF。 | | パスワード再設定を保護 | bool | `true` | 再設定メール要求時にチャレンジ。 | | 返信を保護 | bool | `false` | 返信投稿時にチャレンジ。既定 OFF。スパム圧が高ければ有効化。 | | 新規ディスカッションを保護 | bool | `false` | ディスカッション作成時にチャレンジ。 | | 検証モード | enum | `popup` | `popup`、`bind`、`embed` のいずれか。Web SDK の `product` オプションに対応。 | | テーマ | enum | `auto` | `light`、`dark`、または `auto`。 | | 信頼ユーザーをスキップ | bool | `true` | 信頼グループ(モデレーター等)はチャレンジをバイパス。 | ## SSO / Auth Sync 拡張は Flarum 標準の認証フック(`UserAuthenticated`、サードパーティ Auth Sync プロバイダー、OAuth ブリッジ)と連携します。 - SSO セッションで認証済みでアクセスした場合、チャレンジは表示されません — 拡張は当該セッションを検証済みとして扱います。 - SSO とローカルフォームが混在する構成では、ローカルフォームの経路のみチャレンジが走ります。 - 「信頼ユーザーをスキップ」は上記の上に重ねて適用され、ローカルログインでも信頼グループはチャレンジをバイパスします。 ## FAQ **拡張は無料ですか?** 無料です。Composer パッケージ本体は無料。CaptchaLa 無料プランで月 10,000 回の検証を含みます。 **スパム登録は止められますか?** ほとんどの自動登録は最初のリスクスコアでチャレンジまたはブロックされます。CAPTCHA に 100% はありません — ですが社内テストフォーラムでは有効化後、スパム登録量はおおむね 1 桁減少しました。 **登録時だけ要求できますか?** 可能です。各アクションは個別トグル。既定プロファイルでは登録とパスワード再設定のみが有効です。 **SSO / Auth Sync で動作しますか?** 動作します。SSO / Auth Sync プロバイダーで開かれたセッションはチャレンジをスキップします。[SSO / Auth Sync](#sso-auth-sync) を参照。 **オープンソースですか?** PHP 拡張コードはオープンソースです。検証呼び出しはホスト版 CaptchaLa サービスに対して行われます。 ## ソース - 拡張リポジトリ: [`github.com/Captcha-La/captchala-flarum`](https://github.com/Captcha-La/captchala-flarum) - Packagist: [`captchala/flarum`](https://packagist.org/packages/captchala/flarum) - 関連: [Web SDK](/ja/web-sdk) · [PHP サーバー SDK](/ja/sdk/server-php) · [API リファレンス](/ja/api-reference)