OpenAI
页面内容为机器翻译。查看英文原文

ChatGPT 智能体允许列表

允许 ChatGPT 智能体流量安全可靠地访问你的网站

更新于:2 days ago

概览

ChatGPT 智能体会为每个出站 HTTP 请求签名,让你能够放心识别来自 ChatGPT 的真实流量。通过在 CDN 或防火墙中将该智能体加入允许列表,你可以避免误报,并确保网站访客获得顺畅体验。

消息签名的工作原理

ChatGPT 智能体使用 HTTP Message Signatures 标准(RFC 9421)。每个请求都包含一组 SignatureSignature-Input 标头,以及一个配套的 Signature-Agent 标头,其值设置为 "https://chatgpt.com"

此外,我们还实现了此 RFC 草案,以便可通过此 URL 发现公钥:

你的边缘服务可以检索密钥、验证签名,并确认请求真实可信。

通过 Akamai 配置允许列表

ChatGPT 智能体在 Akamai 验证的机器人列表中被归入人工智能(AI)机器人类别。要明确允许 ChatGPT Agent:

  1. 在你的 Akamai Security Configuration 中,打开相关 Security Policy 并选择 Bot management,然后点击 Custom Bot Categories,并在设置下选择 Manage Bot Categories

  2. 添加新的机器人类别,并在其中创建新的机器人,选择 Type: Akamai-Defined 和 Bot name: ChatGPT Agent

  3. 返回 Custom Bot Categories,并将新机器人类别的操作设置为 Allow.

注意:无需自定义签名验证。Akamai 会为你执行此验证。

通过 Cloudflare 配置允许列表

ChatGPT 智能体是 Cloudflare Bots and Agents 目录中的一个已签名智能体(标签 chatgpt-agent,检测 ID 129220581)。

  1. 在 Cloudflare 仪表板中,打开 Security → WAF 并创建新的自定义规则。

  2. 将表达式设置为Bot Detection ID equals,并搜索“ChatGPT Operator”以查找检测 ID 129220581

  3. 保存并部署该规则。

注意:当机器人检测 ID 等于 129220581 时,该规则应跳过或允许请求。使用此方法时,无需自定义签名验证——Cloudflare 会为你执行此验证。仅凭这些步骤,就足以将 ChatGPT 智能体流量加入允许列表。

通过 HUMAN 配置允许列表

HUMAN Sightline

ChatGPT 智能体是 HUMAN Known Bots & Crawlers 中受信任的 AI 智能体。要允许它访问:

  1. 在你的 Sightline 或 BD 控制台中,转到 Policies → Traffic Policy Settings → Known bots & Crawlers

  2. 搜索 ChatGPT Agent

  3. 将规则更改为 ON,并将规则响应设置为 Allow

HUMAN AgenticTrust

ChatGPT 智能体是 HUMAN AgenticTrust 中受信任的 AI 智能体。它经过加密验证,并且其意图会在每个会话中受到监控。默认情况下,它被允许读取内容、登录并进行购买。要修改此配置:

  1. 在你的 Sightline 控制台中,打开 Policies → AI Agents Permissions

  2. 搜索 ChatGPT Agent

  3. 根据需要授予或撤销特定权限。

注意:无需自定义签名验证——HUMAN 会为你执行此验证。

通过 Vercel 配置允许列表

如果你的网站托管在 Vercel 上,则允许 ChatGPT Agent 访问你的内容时,无需额外配置。Vercel 已将 ChatGPT Agent(通过 chatgpt-operator)添加到其 Verified Bot Directory,其 Bot Verification 系统默认会自动允许我们的请求。

通过其他 CDN 配置允许列表

如果你没有使用上述任何 CDN,仍可通过检查请求标头来信任 ChatGPT 智能体流量:

  1. 验证 Signature-Agent 标头是否与 "https://chatgpt.com" 完全匹配,包括引号。

  2. 知名端点获取与签名关联的公钥。

  3. 按照 RFC 9421 中的定义,验证 Signature 标头的真实性。

故障排查提示

确认任何中间代理都会保留 SignatureSignature-InputSignature-Agent 标头。

这篇文章对你有帮助吗?