概要
ChatGPT エージェントは、外向きの HTTP リクエストをすべて署名するため、ChatGPT からの正当なトラフィックを自信を持って識別できます。CDN やファイアウォールでエージェントを許可リストに登録することで、誤検知を防ぎ、サイト訪問者にスムーズな体験を提供できます。
メッセージ署名の仕組み
ChatGPT エージェントは HTTP Message Signatures 標準(RFC 9421)を使用します。各リクエストには Signature および Signature-Input ヘッダーのセットと、"https://chatgpt.com" に設定された付随の Signature-Agent ヘッダーが含まれます。
さらに、次の URL で公開鍵を検出できるようにするため、このドラフト RFCも実装しています。
エッジサービスは鍵を取得して署名を検証し、リクエストが本物であることを確認できます。
Akamai で許可リスト登録する
ChatGPT エージェントは、Akamai の検証済みボット一覧において Artificial Intelligence(AI)bots カテゴリに分類されています。ChatGPT Agent を明示的に許可するには、次の手順を行います。
Akamai Security Configuration で該当の Security Policy を開き、Bot management を選択します。次に Custom Bot Categories をクリックし、設定の下で Manage Bot Categories を選択します。
新しいボットカテゴリを追加し、その中で新しいボットを作成します。Type: Akamai-Defined、Bot name: ChatGPT Agent を選択します。
Custom Bot Categories に戻り、新しいボットカテゴリのアクションを Allow に設定します。
注: カスタムの署名検証は不要です。Akamai がこの検証を代行します。
Cloudflare で許可リスト登録する
ChatGPT エージェントは Cloudflare の Bots and Agents ディレクトリにおける 署名付きエージェント(タグ chatgpt-agent、検出 ID 129220581)です。
Cloudflare ダッシュボードで Security → WAF を開き、新しいカスタムルールを作成します。
式を Bot Detection ID equals に設定し、「ChatGPT Operator」を検索して検出 ID
129220581を見つけます。ルールを保存してデプロイします。
注: ボット検出 ID が 129220581 と等しい場合に、リクエストをスキップまたは許可するルールにしてください。この方法を使用する場合、カスタムの署名検証は不要です。Cloudflare がこの検証を代行します。これらの手順だけで ChatGPT エージェントのトラフィックを許可リストに登録できます。
HUMAN で許可リスト登録する
HUMAN Sightline
ChatGPT エージェントは、HUMAN の Known Bots & Crawlers における信頼済み AI Agent です。許可するには、次の手順を行います。
Sightline または BD コンソールで、Policies → Traffic Policy Settings → Known bots & Crawlers に移動します。
ChatGPT Agent を検索します。
ルールを ON に切り替え、ルール応答を Allow に設定します。
HUMAN AgenticTrust
ChatGPT エージェントは HUMAN の AgenticTrust における信頼済み AI Agent です。暗号学的に検証され、意図は各セッションで監視されます。デフォルトでは、読み取り、ログイン、購入が許可されています。この設定を変更するには、次の手順を行います。
Sightline コンソールで Policies → AI Agents Permissions を開きます。
ChatGPT Agent を検索します。
必要に応じて、特定の権限を付与または取り消します。
注: カスタムの署名検証は不要です。HUMAN がこの検証を代行します。
Vercel で許可リスト登録する
サイトを Vercel でホスティングしている場合、ChatGPT Agent がコンテンツにアクセスできるようにするための追加設定は不要です。Vercel は ChatGPT Agent(chatgpt-operator 経由)を Verified Bot Directory に追加しており、Bot Verification システムがデフォルトで当社のリクエストを自動的に許可します。
その他の CDN で許可リスト登録する
上記の CDN を使用していない場合でも、リクエストヘッダーを確認することで ChatGPT エージェントのトラフィックを信頼できます。
Signature-Agentヘッダーが"https://chatgpt.com"(引用符を含めて)と完全に一致することを確認します。well-known エンドポイントから、署名に関連付けられた公開鍵を取得します。
RFC 9421 で定義されているとおりに
Signatureヘッダーの真正性を検証します。
トラブルシューティングのヒント
Signature、Signature-Input、Signature-Agent の各ヘッダーが、中継するプロキシによって保持されていることを確認してください。
