ユーザーに表示されるブロックページは、セキュリティ判断の見える顔です。
ユーザーがブロックされたときに見るジェネリックな「access denied」メッセージは、単なる技術的な出力ではありません;組織のセキュリティ体験の一部です。エンタープライズの顧客、市民、ビジネスパートナー、エンドユーザーは、なぜ待たされているのか、何をすべきか、これが一時的なのか恒久的なのかを理解したいと思います。粗くブランド化されていないエラーページは、セキュリティ判断をプロフェッショナルでない体験に変えてしまいます。
DDoS やボット攻撃中に、ユーザーにエラーを見せるだけではしばしば不十分です。実際のユーザーには、少し待つこと、リクエストが検証されていること、自動トラフィックが分別されていること、処理が継続することが伝えられるべきです。カウントダウン、challenge、CAPTCHA のフローはこの点でセキュリティとコミュニケーションの両方の役割を果たします。
多言語かつマルチテナントの環境では、同じページは誰にとっても適切ではありません。ある銀行は地域の言語と企業カラーで説明を表示したいかもしれません;あるサービスプロバイダーは各 tenant に異なるロゴとテキストを使用したいかもしれません;ある API エンドポイントは HTML ではなく JSON エラーメッセージを返すべきです。単一の固定ブロックページではこれらのニーズに応えられません。
ヘルプデスクとセキュリティチームにとって reason code も重要です。ユーザーがエラーを受け取ったとき、サポートチームがどのルール、どのボット判断、どの WAAP アクションが作動したかを理解できる必要があります。しかしこの情報は制御された形で与えられるべきです;ある場合にはユーザーに表示され、ある場合にはログとサポートのフローにのみ保持されます。
TR7 のアプローチは、ブロックページをセキュリティ判断の後に返る静的なエラー出力から脱却させます;ブランド、言語、reason code、CAPTCHA、DDoS challenge、API レスポンス形式でカスタマイズ可能な WAAP 体験へと変えます。
私たちのアプローチ
TR7 はブロックページを、即座に使えるテンプレート、EJS render、native レスポンス返却、reason code 注入で管理します。
即座に使えるページカテゴリが異なるセキュリティアクションをカバーする
DDoS challenge、JavaScript 検証、CAPTCHA、ボット保護エラー、AAM 503 のために個別のテンプレート構造があります。各ページタイプは異なるユーザー体験とセキュリティ判断に応じて設計できます。
EJS テンプレートがテーマ、色、言語を管理する
CAPTCHA ページは EJS テンプレートで生成されます。テーマ、サイズ、背景、テキスト色、言語辞書を render 時に適用できます。
ページは直接トランジット層から提供される
TR7 はブロックまたは challenge のレスポンスを backend に行くことなく返せます。このアプローチは遅延を減らすとともに、攻撃時にアプリケーション層に不要な負荷がかかることを防ぎます。
Reason code とリクエスト変数がページに埋め込める
Reason code とカスタム request 変数を template 内に制御された形で配置できます。これはサポートチームがエラーの理由を切り分けることを助け、必要に応じてユーザーに意味のある説明を与えることを助けます。
ケイパビリティ
TR7 ブロックページのカスタマイズは、異なる WAAP 判断のために HTML、CAPTCHA、challenge、JSON レスポンスを中央で管理します。
DDoS challenge ページが実際のユーザーをパニックさせずに待たせる
TR7 は DDoS シナリオ向けにカスタム challenge ページを使用できます。これらのページはカウントダウン、ユーザー通知、検証メッセージを含められます。実際のユーザーにはリクエストが処理されており、まもなく継続することが伝えられます。これにより攻撃時に単なるブロックではなく、管理可能なユーザー体験が提供されます。
JavaScript 検証ページが自動化トラフィックの分別を助ける
DDoS JS solver ページはブラウザの動作を通じた検証フローをサポートします。クライアント側の制御ロジックで自動トラフィックの分別を狙います。複数言語の即座に使えるファイルを利用できます。新しい言語や異なるテキストのニーズはテンプレート構造で対応できます。
CAPTCHA EJS テンプレートがテーマ、サイズ、言語を柔軟に管理する
CAPTCHA テンプレートが CAPTCHA 体験を生成します。`auto`、`dark`、`light` のテーマ選択;`small`、`medium`、`large` のサイズを使用できます。背景とテキストの色はパラメータで調整できます。この構造はセキュリティ検証を組織のビジュアルアイデンティティに合わせます。
テキストと不可視 CAPTCHA タイプが異なるフローに適応する
CAPTCHA 構成でテキストまたは不可視のタイプを使用できます。テキスト CAPTCHA はユーザーが明示的に回答する必要がある状況に適しています。不可視モードはより低い摩擦が望まれるシナリオで選ばれます。これにより同じセキュリティ制御が異なるユーザー体験の目標に応じて調整されます。
言語辞書が多言語追加をテンプレートレベルでサポートする
TR7 は複数言語の即座に使える CAPTCHA テキスト辞書とともに提供されます。タイトル、説明、入力フィールド、送信、再読み込み、検証中、成功、失敗、エラー、期限切れなど約 16 のテキスト項目を言語単位で管理できます。新しい言語はテンプレート内の翻訳オブジェクトに追加することで拡張できます。ユーザーは希望の言語を自分で追加できます;多言語構造はこのように提供されます。
Per-vService CAPTCHA 構成が tenant とアプリケーションの分離を提供する
各 vService は独自の CAPTCHA 構成値で異なる外観と動作を使用できます。これはマルチテナント、MSSP、または異なるブランドの下で動作するアプリケーションで重要です。同じ TR7 上で各アプリケーションが独自の色、言語、テキスト、検証スタイルで動作できます。セキュリティ制御は中央に保たれつつ、ユーザー体験が分離されます。
ボット保護エラーページが悪質な自動化トラフィックを別個に扱う
ボット保護判断のためにカスタムエラーページを使用できます。不正なユーザーエージェント、自動化動作、またはボット保護ルールがトリガーされたとき、ユーザーに別個のレスポンスを返せます。このページはブランドの言葉とサポートプロセスに応じてカスタマイズできます。技術的な reason code は望めば内部に保持し、望めば制御された形で表示できます。
AAM 503 ページが backend にアクセスできないとき制御されたメッセージを与える
backend にアクセスできないとき、または pool が一時的にサービスを提供できないとき、カスタム AAM 503 ページを使用できます。このページはユーザーが空のブラウザエラーや意味のない接続切断を見ることを防ぎます。計画メンテナンス、一時的な混雑、サービスアクセスの問題をより理解しやすいメッセージで提示できます。組織はエラー時にもブランドとサポートの誘導を保てます。
カスタム WAAP アクションが HTML または JSON レスポンスを返せる
TR7 は WAAP アクションで特定の status code、content type、ファイル内容でカスタムレスポンスを返せます。HTML ページ、プレーンテキスト、または API エンドポイント向けの JSON エラー body を使用できます。ファイルベースまたは inline コンテンツの返却モデルを適用できます。この柔軟性は web ユーザーと API クライアントのために異なるブロック体験を生み出します。
Reason code 注入がサポートとインシデントの切り分けを容易にする
ページ内容に request 変数や transaction レベルの reason code を配置できます。ヘルプデスクは、ユーザーから来たスクリーンショットやエラーコードでどのセキュリティ判断が作動したかをより速く理解できます。セキュリティチームは、どの情報をユーザーに表示し、どれをログ側にのみ保持するかをポリシーとして定められます。この構造はデバッグ速度を高めつつ情報漏洩のリスクを制御下に保ちます。
運用上の深さ
ブロックページの信頼できる動作のために、ファイル提供、言語追加、status code 選択、動的変数、静的 asset 管理が一体で計画されます。
言語追加モデル
CAPTCHA テンプレートに新しい言語を追加するには、該当の翻訳オブジェクトに新しい言語辞書を定義できます。タイトル、エラー、検証、待機のテキストが言語単位で分けられます。このアプローチは、多言語サポートを固定の製品リストにではなく、拡張可能なテンプレート構造に結びつけます。
Asset ファイルパス
CAPTCHA と challenge のページのために base path、JavaScript 提供パス、HTML ファイル、JavaScript ファイルを個別の構成フィールドで管理できます。この分離は静的コンテンツが正しいパスから提供されることを保証します。複数のページタイプでファイル構成がより読みやすく保たれます。
Native レスポンス返却
TR7 は特定の条件が成立したとき、native レスポンス返却ロジックで直接 HTML または JSON レスポンスを生成できます。このレスポンスは backend に行くことなく生成されます。Challenge、CAPTCHA、カスタム WAAP アクションで遅延とアプリケーション負荷がこのように減らされます。
Status code の柔軟性
異なるシナリオのために異なる HTTP status code 値を使用できます。CAPTCHA フローは 200 で提供できる一方、制限やブロックの判断は 403、413、451、503 などのコードで返せます。API と web のユーザーのために正しいセマンティックなコードを選ぶことが統合品質を高めます。
ロゴと SVG の使用
ロゴ、SVG、ビジュアルコンテンツを HTML 内に inline または base64 として配置できます。この方法は個別の asset 依存を減らし、単一ファイルのカスタムページ生成を容易にします。組織のブランドはカスタム HTML 構成を通じてページに加えられます。
ファイル同期
即座に使える DDoS challenge と JS 検証のファイルは動的ファイルバインディング機構で追跡できます。ファイルが更新されると、該当コンテンツがサービス層に反映されます。この構造は、静的ページを手動のサービス再起動操作に変えることなく最新に保つことを助けます。
どのようなシナリオで使われるか
銀行向けのブランド付き地域言語ブロックページ
銀行は、白/青テーマ、企業ロゴ、地域言語の説明、サポートリンクを含むカスタム CAPTCHA またはブロックページを使用できます。reason code はユーザーから隠される一方、サポートチームはログ上で実際の理由を調査できます。
E コマースで高負荷攻撃時の DDoS challenge
キャンペーン期間中に自動化トラフィックが増えたとき、実際のユーザーにカウントダウン付きの DDoS challenge ページを表示できます。ユーザーは短い検証の後にショッピングフローに進む一方、ボットトラフィックが分別されます。
公共ポータルでの地域別アクセスメッセージ
公共機関は、特定のアクセス判断で地域の言語のみを含むカスタムページを返せます。なぜアクセスが制限されたか、どのサポートチャネルに問い合わせるべきかが、組織の言葉でユーザーに伝えられます。
API エンドポイント向けの JSON ブロックレスポンス
API サービスでは HTML ページではなく JSON 形式の 403 または 429 レスポンスを返す方が適切です。TR7 はカスタム WAAP アクションで reason 値を JSON body に埋め込み、クライアントアプリケーションがエラーをプログラム的に処理できるようにします。
よくある質問
どのセキュリティ判断にカスタムブロックページを使用できますか?
CAPTCHA ページに新しい言語を追加するにはどうしますか?
ブロックページは backend に負荷をかけますか?
API エンドポイント向けに HTML ではなく JSON エラーレスポンスを返せますか?
Reason code は常にユーザーに表示しなければなりませんか?
マルチテナント環境で各アプリケーションが異なるページを使用できますか?
セキュリティ判断の後の体験もお客様のブランドに合わせる
DDoS、CAPTCHA、ボット保護、WAAP アクションのためのカスタマイズ可能なブロックページ。お客様の構成でどう動作するかを一緒に確認しましょう。