多くのCAPTCHA実装は、検証の瞬間にクライアントIP、ブラウザフィンガープリント、ヘッダーセット、行動テレメトリーをサードパーティサービスと共有します。このモデルは一部の業界では許容されますが、公共部門、金融、医療、エアギャップ環境においては深刻なデータレジデンシーおよびコンプライアンスリスクをもたらします。
コンプライアンス上の懸念がある組織では、ログイン画面上の一度のCAPTCHA呼び出しが個人データ転送の議論に発展することがあります。明示的な同意要件、越境データ転送規制、契約上の保護措置、ベンダー依存といった問題が、単純なボット保護の決定を長期的なコンプライアンスプロジェクトへと変えてしまいます。
外部CAPTCHAサービスへの依存は運用リスクも生み出します。サードパーティ検証サービスが遅延または到達不能になると、保護対象アプリケーションのログイン・登録・決済フローが影響を受けます。ボット保護がアプリケーションの重要な外部依存性になってしまいます。
正しいモデルは、チャレンジの生成・配信・検証を組織自身のADC層で実施することです。クライアントデータはローカルに留まり、検証プロセスは自己完結し、難易度はサービスリスクに応じてスケールし、失敗した試みはカランティンエスカレーションにつながります。
TR7 Self-Hosted CAPTCHAはまさにこのモデルを提供します。ボット検証をself-hosted化し、データレジデンシーリスクを低減し、WAAP判定パイプラインと直接統合して動作します。
TR7はローカル生成、調整可能な難易度、可視・不可視検証モード、カランティンエスカレーションによってCAPTCHAを実装します。
CAPTCHA画像、HTML/JSコンテンツ、トークン署名、解答検証はすべてTR7上で動作します。検証プロセス中に外部サービスへのアウトバウンドHTTP呼び出しは行われません。
難易度は文字数、視覚的ノイズ、PoWワークロード、最低解答時間と合わせて評価されます。オペレーターは単一の設定でユーザー体験とボット耐性のバランスを取ることができます。
高リスクのクライアントには視覚的検証を表示できます。中リスクのクライアントには、ユーザーに追加画面を表示せずPoW検証をバックグラウンドでサイレントに実行できます。
CAPTCHAはリスクしきい値を超えた場合のみトリガーされます。誤答は追跡され、しきい値を超えるとdeny、redirect、カスタムコンテンツ、カスタムステータスコードなどのカランティンアクションが適用されます。
Self-Hosted CAPTCHAは、self-hostedチャレンジ生成とボットスコアリング、PoW、クッキーセキュリティ、カランティンフローを組み合わせます。
TR7はCAPTCHA画像を内部で生成し、チャレンジページを自サービスから提供し、ローカルヘルパープロセスを通じて解答を検証します。クライアントIP、ユーザーエージェント、検証結果は外部サービスに送信されません。このモデルはデータレジデンシー要件を持つ組織に重要な利点をもたらします。CAPTCHAによる保護は外部サービスへの依存なしに適用されます。
TR7では難易度を1〜5のスケールで選択できます。この値はPoWビット深度(16〜20ビット)、CAPTCHA文字数(4〜7文字)、視覚的な線・点の密度、サーバー強制の最低解答時間に対応します。オペレーターは単一のスライダーで人間の体験とボットコストの両方を管理します。リスクの高いサービスにはより高い難易度を設定できます。
CAPTCHAの検証の一部としてPoW検証が適用されます。ブラウザは解答が受け付けられる前に所定の計算を完了する必要があります。サーバー側の最低解答時間も強制されます。ボットが正しい答えを即座に生成しても、速すぎる解答は不審とみなされます。このアプローチは正規ユーザーへの負担を最小限に抑えつつ、自動化のコストを高めます。
検証成功後に生成されるトークンは暗号化クッキーで運ばれます。トークンはクライアントのIPアドレスとユーザーエージェントのコンテキストにバインドでき、あるクライアントで取得した検証トークンを別のコンテキストで再利用することが大幅に困難になります。verifiedTtl期間中、正規ユーザーはリクエストのたびにCAPTCHAを解く必要がありません。
TR7は各CAPTCHAルールに専用のヘルパープロセスと専用ソケットパスを割り当てることができます。この分離により、あるルールの障害または負荷スパイクが他のルールに与える影響を軽減します。プールベースの分離により、異なるサービスのCAPTCHAフローは独立して管理されます。scalingCountにより同一ルールで複数のプロセスを実行できます。
typeをtextに設定すると、ユーザーは視覚的CAPTCHAに直面します。invisibleモードでは、完全なチャレンジ画面を表示せずにPoWベースの検証が実行されます。中リスクのクライアントはより少ない摩擦で検証され、高リスクのクライアントには視覚的CAPTCHAが表示されてボットコストが高まります。
サービスごとに背景色、テキスト色、テーマ、サイズを定義できます。小・中・大のCAPTCHAサイズはさまざまなユーザーインターフェースに適応します。検証画面が組織のブランド体験から切り離されて見えることはありません。ホワイトラベルB2B SaaSシナリオでは、各テナントが自社のビジュアルアイデンティティに合った体験を提供できます。
CAPTCHAのタイトル、説明テキスト、エラーメッセージを多言語構造に紐付けることができます。言語はサービスごとまたはクライアントのコンテキストに基づいて選択できます。これにより、公共部門、金融、多地域サービスでより明確な検証フローを提供します。新しい言語の追加は検証ロジックを変更せずに行えます。
CAPTCHAはすべてのユーザーにデフォルトで表示する必要はありません。TR7のボットスコアリング、IPレピュテーション、行動シグナル、DDoS条件を通じて、リスクの高いクライアントのみにチャレンジを制限できます。これにより正規ユーザーの摩擦が軽減されます。信頼できるトラフィックは通常のパスを継続し、疑わしいトラフィックは検証へと誘導されます。
CAPTCHAの誤答を追跡でき、設定したしきい値を超えるとクライアントはカランティンに置かれます。カランティンアクションはdeny、redirect、customContent、またはcustomStatusCodeとして設定できます。これによりボットがシステムを疲弊させるためにチャレンジを繰り返し消費することを防ぎます。失敗が積み重なるにつれ、チャレンジの代わりにより厳しいアクションが適用されます。
ユーザーがCAPTCHAを正常に通過すると、設定された期間、検証済みとして扱われます。verifiedTtlが切れるまで同じユーザーにCAPTCHAが再表示されることはありません。これにより正規ユーザーの体験を保護しつつ、ボットに対する初期検証のバリアを維持します。IP+UAバインディングにより検証状態が盗まれて別のコンテキストでリプレイされることが困難になります。
CAPTCHAは単独の画面ではなく、TR7判定パイプラインのアクションの一つです。DDoS保護、ボット保護、IPレピュテーション、アカウント乗っ取り対策ポリシーはすべてshowCaptchaアクションをトリガーできます。各セキュリティモジュールが自身のリスクシグナルをCAPTCHA検証フローに接続できます。オペレーターは異なるリスクシナリオにまたがって単一のself-hostedチャレンジインフラを使用します。
Self-hosted CAPTCHAはヘルパープロセス、シークレット管理、トークンバインディング、カランティンステートマシン、多言語サポート、監査記録と共に運用されます。
各CAPTCHAルールは専用のヘルパープロセスで実行できます。プロセスが予期せず終了した場合、自動的に再起動できます。あるルールの障害が他のサービスのCAPTCHA検証に影響しません。
各プールとCAPTCHAルールに専用のソケットパスを作成できます。この構造により、サービス間でチャレンジ検証トラフィックが分離されます。設定が再適用される際、同一の論理ルールと同一の物理ソケット構造の対応が保持されます。
ルールごとに個別のシークレットを生成でき、検証トークンはそのシークレットで署名されます。シークレットがローテーションされると、既存の検証済みトークンが無効になることがあります。この動作は計画的なセキュリティ更新に活用できます。
PoW解答はモダンブラウザでより効率的なAPIを使用できます。サポートのない環境では、より遅いが互換性のあるJavaScriptフォールバックが適用されます。モバイルクライアントでは、解答プロセスが非同期で実行されるためユーザーインターフェースがフリーズしません。
失敗したチャレンジ応答は個別に追跡されます。しきい値を超えると、クライアントは設定された期間カランティンアクションに誘導されます。その期間中、別のCAPTCHAを表示する代わりにdeny、redirect、またはカスタムコンテンツが直接適用されます。
各チャレンジについて、タイムスタンプ、送信元IP、ユーザーエージェント、ルールID、難易度、チャレンジタイプ、結果をログに記録できます。PoWの解答時間もインシデント調査のための貴重なシグナルを生成します。これらの記録はボット分析と不正フォレンジックワークフローをサポートします。
銀行はCAPTCHA検証中にユーザーIPやブラウザ情報を外部サービスに送信しないことを求められる場合があります。TR7 self-hosted CAPTCHAを使用すると、チャレンジプロセスはADC内に留まり、データレジデンシー要件に沿ったログイン保護が実現します。
外部検証サービスへのアクセスがない環境で運用する政府機関もボット保護を適用できます。TR7のCAPTCHA生成と検証は、外部DNS解決やアウトバウンドHTTP呼び出しを必要とせずに機能します。
クーポン不正、偽アカウント作成、自動登録攻撃に対して、登録エンドポイントをボットスコアに基づいてCAPTCHAの背後に配置できます。失敗した試みはカランティンに連携し、ボットがチャレンジを継続消費することを防ぎます。
医療ポータルは外部CAPTCHAサービスに依存せず、機密データを含む予約・患者アクセスフローでユーザーを検証できます。ユーザー検証プロセスは組織の管理下に留まります。
DDoSまたはボットウェーブの発生時、TR7はリスクスコアの高いクライアントのみにCAPTCHAまたは不可視PoWを適用できます。大多数の正規ユーザーは追加の摩擦なしに継続しながら、ボットコストが高められます。
B2B SaaSプロバイダーは各テナントに対して色、テーマ、サイズ設定を個別に設定できます。CAPTCHA画面にサードパーティのロゴは表示されず、顧客自身のユーザー体験により近い外観になります。
データをローカルに保つself-hosted CAPTCHA — WAAP、DDoS、ATOフローと統合。お客様自身の環境でのライブセットアップをご案内します。