機能

Self-Hosted CAPTCHA

CAPTCHAの生成、配信、検証はTR7 ADC内で実行されます。クライアントデータは自社インフラから外に出ません。

TR7 Self-Hosted CAPTCHAは、ボット検証をサードパーティクラウドサービスに依存しない形で実現します。画像生成、チャレンジページ、解答検証、トークン署名、クッキーバインディング、Proof-of-Work(PoW)検証はすべてTR7 ADC内で実行されます。 このアーキテクチャでは、クライアントIPアドレス、ユーザーエージェント、ヘッダーセット、行動シグナル、ユーザーIDが外部検証サービスに送信されることはありません。データレジデンシー要件、GDPR、クローズドネットワーク規制、または業界固有の規制に対応する組織にとって、CAPTCHAプロセス全体が組織の管理下に留まります。 ユーザーが目にするのはシンプルな検証画面です。その裏側では、難易度、PoWワークロード、最低解答時間、暗号化クッキー、IP+UAバインディング、カランティンのエスカレーションが連携して動作します。中リスクのクライアントには見えないPoWモードを、高リスクのクライアントには視覚的CAPTCHAを使用できます。 結果として:TR7はCAPTCHAを外部クラウドへのアウトバウンド呼び出しから、WAAP判定・DDoS保護・ボットスコアリング・ATO対策フローと直接統合されたself-hosted型のデータ安全なチャレンジ層へと変換します。

0
チャレンジ中にサードパーティクラウドに送信されるリクエスト数 — 生成・配信・検証のすべてのステップがADC内で完結
5
難易度レベル — PoWワークロード、文字数、視覚的ノイズ、最低解答時間をすべて単一スライダーで管理
AES-256
クッキー暗号化 + IP+UAバインディング — 検証トークンを別のクライアントコンテキストでリプレイ不可

CAPTCHAはボットを止めるべきであって、ユーザーデータを組織外に運ぶべきではありません。

多くのCAPTCHA実装は、検証の瞬間にクライアントIP、ブラウザフィンガープリント、ヘッダーセット、行動テレメトリーをサードパーティサービスと共有します。このモデルは一部の業界では許容されますが、公共部門、金融、医療、エアギャップ環境においては深刻なデータレジデンシーおよびコンプライアンスリスクをもたらします。

コンプライアンス上の懸念がある組織では、ログイン画面上の一度のCAPTCHA呼び出しが個人データ転送の議論に発展することがあります。明示的な同意要件、越境データ転送規制、契約上の保護措置、ベンダー依存といった問題が、単純なボット保護の決定を長期的なコンプライアンスプロジェクトへと変えてしまいます。

外部CAPTCHAサービスへの依存は運用リスクも生み出します。サードパーティ検証サービスが遅延または到達不能になると、保護対象アプリケーションのログイン・登録・決済フローが影響を受けます。ボット保護がアプリケーションの重要な外部依存性になってしまいます。

正しいモデルは、チャレンジの生成・配信・検証を組織自身のADC層で実施することです。クライアントデータはローカルに留まり、検証プロセスは自己完結し、難易度はサービスリスクに応じてスケールし、失敗した試みはカランティンエスカレーションにつながります。

TR7 Self-Hosted CAPTCHAはまさにこのモデルを提供します。ボット検証をself-hosted化し、データレジデンシーリスクを低減し、WAAP判定パイプラインと直接統合して動作します。

私たちのアプローチ

TR7はローカル生成、調整可能な難易度、可視・不可視検証モード、カランティンエスカレーションによってCAPTCHAを実装します。

生成、配信、検証はADC内で実施

CAPTCHA画像、HTML/JSコンテンツ、トークン署名、解答検証はすべてTR7上で動作します。検証プロセス中に外部サービスへのアウトバウンドHTTP呼び出しは行われません。

単一の難易度設定が複数のセキュリティパラメーターを管理

難易度は文字数、視覚的ノイズ、PoWワークロード、最低解答時間と合わせて評価されます。オペレーターは単一の設定でユーザー体験とボット耐性のバランスを取ることができます。

可視CAPTCHAと不可視PoWモードを同時にサポート

高リスクのクライアントには視覚的検証を表示できます。中リスクのクライアントには、ユーザーに追加画面を表示せずPoW検証をバックグラウンドでサイレントに実行できます。

ボットスコアと失敗応答がカランティンエスカレーションに連携

CAPTCHAはリスクしきい値を超えた場合のみトリガーされます。誤答は追跡され、しきい値を超えるとdeny、redirect、カスタムコンテンツ、カスタムステータスコードなどのカランティンアクションが適用されます。

機能一覧

Self-Hosted CAPTCHAは、self-hostedチャレンジ生成とボットスコアリング、PoW、クッキーセキュリティ、カランティンフローを組み合わせます。

self-hostedチャレンジプロセスは外部クラウド呼び出しなしで動作

TR7はCAPTCHA画像を内部で生成し、チャレンジページを自サービスから提供し、ローカルヘルパープロセスを通じて解答を検証します。クライアントIP、ユーザーエージェント、検証結果は外部サービスに送信されません。このモデルはデータレジデンシー要件を持つ組織に重要な利点をもたらします。CAPTCHAによる保護は外部サービスへの依存なしに適用されます。

5段階の難易度がPoW、文字数、視覚的ノイズを一括調整

TR7では難易度を1〜5のスケールで選択できます。この値はPoWビット深度(16〜20ビット)、CAPTCHA文字数(4〜7文字)、視覚的な線・点の密度、サーバー強制の最低解答時間に対応します。オペレーターは単一のスライダーで人間の体験とボットコストの両方を管理します。リスクの高いサービスにはより高い難易度を設定できます。

Proof-of-Workにより自動化が持つ即答の優位性を排除

CAPTCHAの検証の一部としてPoW検証が適用されます。ブラウザは解答が受け付けられる前に所定の計算を完了する必要があります。サーバー側の最低解答時間も強制されます。ボットが正しい答えを即座に生成しても、速すぎる解答は不審とみなされます。このアプローチは正規ユーザーへの負担を最小限に抑えつつ、自動化のコストを高めます。

暗号化クッキーとIP+UAバインディングでトークンリプレイリスクを軽減

検証成功後に生成されるトークンは暗号化クッキーで運ばれます。トークンはクライアントのIPアドレスとユーザーエージェントのコンテキストにバインドでき、あるクライアントで取得した検証トークンを別のコンテキストで再利用することが大幅に困難になります。verifiedTtl期間中、正規ユーザーはリクエストのたびにCAPTCHAを解く必要がありません。

各CAPTCHAルールは独立したヘルパープロセスで実行可能

TR7は各CAPTCHAルールに専用のヘルパープロセスと専用ソケットパスを割り当てることができます。この分離により、あるルールの障害または負荷スパイクが他のルールに与える影響を軽減します。プールベースの分離により、異なるサービスのCAPTCHAフローは独立して管理されます。scalingCountにより同一ルールで複数のプロセスを実行できます。

可視テキストCAPTCHAと不可視PoWを異なるリスクレベルに適用

typeをtextに設定すると、ユーザーは視覚的CAPTCHAに直面します。invisibleモードでは、完全なチャレンジ画面を表示せずにPoWベースの検証が実行されます。中リスクのクライアントはより少ない摩擦で検証され、高リスクのクライアントには視覚的CAPTCHAが表示されてボットコストが高まります。

テーマ、色、サイズをブランドに合わせてカスタマイズ可能

サービスごとに背景色、テキスト色、テーマ、サイズを定義できます。小・中・大のCAPTCHAサイズはさまざまなユーザーインターフェースに適応します。検証画面が組織のブランド体験から切り離されて見えることはありません。ホワイトラベルB2B SaaSシナリオでは、各テナントが自社のビジュアルアイデンティティに合った体験を提供できます。

多言語対応の検証画面でユーザー体験を向上

CAPTCHAのタイトル、説明テキスト、エラーメッセージを多言語構造に紐付けることができます。言語はサービスごとまたはクライアントのコンテキストに基づいて選択できます。これにより、公共部門、金融、多地域サービスでより明確な検証フローを提供します。新しい言語の追加は検証ロジックを変更せずに行えます。

ボットスコアリングにより疑わしいクライアントのみにCAPTCHAを表示

CAPTCHAはすべてのユーザーにデフォルトで表示する必要はありません。TR7のボットスコアリング、IPレピュテーション、行動シグナル、DDoS条件を通じて、リスクの高いクライアントのみにチャレンジを制限できます。これにより正規ユーザーの摩擦が軽減されます。信頼できるトラフィックは通常のパスを継続し、疑わしいトラフィックは検証へと誘導されます。

CAPTCHAカランティンが誤答をペナルティへ変換

CAPTCHAの誤答を追跡でき、設定したしきい値を超えるとクライアントはカランティンに置かれます。カランティンアクションはdeny、redirect、customContent、またはcustomStatusCodeとして設定できます。これによりボットがシステムを疲弊させるためにチャレンジを繰り返し消費することを防ぎます。失敗が積み重なるにつれ、チャレンジの代わりにより厳しいアクションが適用されます。

検証済みクッキーにより繰り返しのチャレンジ負荷を軽減

ユーザーがCAPTCHAを正常に通過すると、設定された期間、検証済みとして扱われます。verifiedTtlが切れるまで同じユーザーにCAPTCHAが再表示されることはありません。これにより正規ユーザーの体験を保護しつつ、ボットに対する初期検証のバリアを維持します。IP+UAバインディングにより検証状態が盗まれて別のコンテキストでリプレイされることが困難になります。

WAAP、DDoS、ATO、IPレピュテーションポリシーとの統合アクションとしてトリガー

CAPTCHAは単独の画面ではなく、TR7判定パイプラインのアクションの一つです。DDoS保護、ボット保護、IPレピュテーション、アカウント乗っ取り対策ポリシーはすべてshowCaptchaアクションをトリガーできます。各セキュリティモジュールが自身のリスクシグナルをCAPTCHA検証フローに接続できます。オペレーターは異なるリスクシナリオにまたがって単一のself-hostedチャレンジインフラを使用します。

運用上の深み

Self-hosted CAPTCHAはヘルパープロセス、シークレット管理、トークンバインディング、カランティンステートマシン、多言語サポート、監査記録と共に運用されます。

01

独立したヘルパープロセス

各CAPTCHAルールは専用のヘルパープロセスで実行できます。プロセスが予期せず終了した場合、自動的に再起動できます。あるルールの障害が他のサービスのCAPTCHA検証に影響しません。

02

プールベースのソケット分離

各プールとCAPTCHAルールに専用のソケットパスを作成できます。この構造により、サービス間でチャレンジ検証トラフィックが分離されます。設定が再適用される際、同一の論理ルールと同一の物理ソケット構造の対応が保持されます。

03

決定論的シークレット導出

ルールごとに個別のシークレットを生成でき、検証トークンはそのシークレットで署名されます。シークレットがローテーションされると、既存の検証済みトークンが無効になることがあります。この動作は計画的なセキュリティ更新に活用できます。

04

モダンおよびレガシーブラウザの互換性

PoW解答はモダンブラウザでより効率的なAPIを使用できます。サポートのない環境では、より遅いが互換性のあるJavaScriptフォールバックが適用されます。モバイルクライアントでは、解答プロセスが非同期で実行されるためユーザーインターフェースがフリーズしません。

05

カランティンステートマシン

失敗したチャレンジ応答は個別に追跡されます。しきい値を超えると、クライアントは設定された期間カランティンアクションに誘導されます。その期間中、別のCAPTCHAを表示する代わりにdeny、redirect、またはカスタムコンテンツが直接適用されます。

06

構造化された監査記録

各チャレンジについて、タイムスタンプ、送信元IP、ユーザーエージェント、ルールID、難易度、チャレンジタイプ、結果をログに記録できます。PoWの解答時間もインシデント調査のための貴重なシグナルを生成します。これらの記録はボット分析と不正フォレンジックワークフローをサポートします。

利用シナリオ

コンプライアンス上の懸念がある銀行ログインポータル

銀行はCAPTCHA検証中にユーザーIPやブラウザ情報を外部サービスに送信しないことを求められる場合があります。TR7 self-hosted CAPTCHAを使用すると、チャレンジプロセスはADC内に留まり、データレジデンシー要件に沿ったログイン保護が実現します。

エアギャップネットワーク上の公共部門アプリケーション

外部検証サービスへのアクセスがない環境で運用する政府機関もボット保護を適用できます。TR7のCAPTCHA生成と検証は、外部DNS解決やアウトバウンドHTTP呼び出しを必要とせずに機能します。

ECサイト登録ページのボット新規登録バリア

クーポン不正、偽アカウント作成、自動登録攻撃に対して、登録エンドポイントをボットスコアに基づいてCAPTCHAの背後に配置できます。失敗した試みはカランティンに連携し、ボットがチャレンジを継続消費することを防ぎます。

サードパーティ依存のない医療ポータル保護

医療ポータルは外部CAPTCHAサービスに依存せず、機密データを含む予約・患者アクセスフローでユーザーを検証できます。ユーザー検証プロセスは組織の管理下に留まります。

DDoSイベント中にリスクの高いトラフィックのみにチャレンジを適用

DDoSまたはボットウェーブの発生時、TR7はリスクスコアの高いクライアントのみにCAPTCHAまたは不可視PoWを適用できます。大多数の正規ユーザーは追加の摩擦なしに継続しながら、ボットコストが高められます。

マルチテナントSaaSにおけるブランド整合した検証画面

B2B SaaSプロバイダーは各テナントに対して色、テーマ、サイズ設定を個別に設定できます。CAPTCHA画面にサードパーティのロゴは表示されず、顧客自身のユーザー体験により近い外観になります。

よくある質問

CAPTCHAプロセス中にクライアントデータは組織外に出ますか?
いいえ。TR7 self-hosted CAPTCHAアーキテクチャでは、画像生成、チャレンジページの配信、検証はすべてADC内で完結します。クライアントIP、ユーザーエージェント、ヘッダーセット、行動シグナルはいかなるサードパーティサービスにも送信されません。データレジデンシーの管理台帳にCAPTCHAに関する越境データ転送の記載は生じません。
難易度設定はどのように機能しますか?
難易度は1〜5のスケールで選択されます。単一のスライダーがPoWビット深度(16〜20ビット)、CAPTCHA文字数(4〜7文字)、視覚的な線・点の密度、サーバー強制の最低解答時間をまとめて設定します。オペレーターは一つのパラメーターでユーザー体験とボット耐性のバランスを取ります。
不可視モードはいつ使用すべきですか?
中リスクのクライアントには、視覚的なチャレンジ画面を表示せずPoWベースの検証をバックグラウンドでサイレントに実行できます。高リスクのクライアントには視覚的CAPTCHAが使用されます。どちらのモードが適用されるかは、ボットスコア、IPレピュテーション、設定されたリスクしきい値に基づいて自動的に選択されます。
カランティンメカニズムはどのように機能しますか?
CAPTCHAの誤答は追跡されます。設定したしきい値を超えると、クライアントはカランティンに置かれ、設定された期間はCAPTCHAを表示せずにdeny、redirect、customContent、またはcustomStatusCodeアクションが直接適用されます。これによりボットが継続的にチャレンジを消費し続けることを防ぎます。
検証済みユーザーはリクエストのたびにCAPTCHAを解く必要がありますか?
いいえ。ユーザーがCAPTCHAを通過すると、生成された暗号化クッキーがverifiedTtlが切れるまでそのユーザーを検証済みとして扱います。クッキーはクライアントのIPとユーザーエージェントにバインドされており、別のコンテキストでの使用が大幅に困難になります。
エアギャップまたはクローズドネットワーク環境でも機能しますか?
はい。TR7のCAPTCHA生成と検証は外部DNS解決やアウトバウンドHTTP呼び出しを必要としません。すべての処理はADC内のヘルパープロセスによってUnixソケット経由で実行されます。外部への出口がない公共部門およびプライベートクラウド環境でもボット保護は中断なく機能します。

ボット検証を自社インフラに取り込む

データをローカルに保つself-hosted CAPTCHA — WAAP、DDoS、ATOフローと統合。お客様自身の環境でのライブセットアップをご案内します。