概览
ChatGPT 智能体会为每个出站 HTTP 请求签名,让你能够放心识别来自 ChatGPT 的真实流量。通过在 CDN 或防火墙中将该智能体加入允许列表,你可以避免误报,并确保网站访客获得顺畅体验。
消息签名的工作原理
ChatGPT 智能体使用 HTTP Message Signatures 标准(RFC 9421)。每个请求都包含一组 Signature 和 Signature-Input 标头,以及一个配套的 Signature-Agent 标头,其值设置为 "https://chatgpt.com"。
此外,我们还实现了此 RFC 草案,以便可通过此 URL 发现公钥:
你的边缘服务可以检索密钥、验证签名,并确认请求真实可信。
通过 Akamai 配置允许列表
ChatGPT 智能体在 Akamai 验证的机器人列表中被归入人工智能(AI)机器人类别。要明确允许 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 智能体。要允许它访问:
在你的 Sightline 或 BD 控制台中,转到 Policies → Traffic Policy Settings → Known bots & Crawlers。
搜索 ChatGPT Agent。
将规则更改为 ON,并将规则响应设置为 Allow。
HUMAN AgenticTrust
ChatGPT 智能体是 HUMAN AgenticTrust 中受信任的 AI 智能体。它经过加密验证,并且其意图会在每个会话中受到监控。默认情况下,它被允许读取内容、登录并进行购买。要修改此配置:
在你的 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"完全匹配,包括引号。从知名端点获取与签名关联的公钥。
按照 RFC 9421 中的定义,验证
Signature标头的真实性。
故障排查提示
确认任何中间代理都会保留 Signature、Signature-Input 和 Signature-Agent 标头。
