OpenAI
此頁面由機器翻譯。查看原始英文文章

ChatGPT 智慧體允許清單設定

讓 ChatGPT 智慧體流量安全且可靠地抵達你的網站

更新日期:6 days ago

概觀

ChatGPT 智慧體會為每個對外 HTTP 請求簽章,讓你能放心辨識來自 ChatGPT 的真實流量。將該智慧體加入 CDN 或防火牆的允許清單後,你可以避免誤判,並確保網站訪客獲得順暢體驗。

訊息簽章的運作方式

ChatGPT 智慧體使用 HTTP Message Signatures 標準(RFC 9421)。每個請求都包含一組 SignatureSignature-Input 標頭,以及設為 "https://chatgpt.com" 的配套 Signature-Agent 標頭。

此外,我們也實作這份 RFC 草案,以便在此 URL 探索公開金鑰:

你的邊緣服務可以擷取金鑰、驗證簽章,並確認請求確實為真。

使用 Akamai 進行允許清單設定

ChatGPT 智慧體在 Akamai 驗證的機器人清單中,歸類於人工智慧(AI)機器人類別。若要明確允許 ChatGPT 智慧體:

  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 機器人與智慧體目錄中的已簽署智慧體(標籤 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 已知機器人與爬蟲中的受信任 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 智慧體存取你的內容。Vercel 已將 ChatGPT 智慧體(透過 chatgpt-operator)加入其 Verified Bot Directory,且其 Bot Verification 系統預設會自動允許我們的請求。

使用其他 CDN 進行允許清單設定

如果你未使用上述任何 CDN,仍可透過檢查請求標頭來信任 ChatGPT 智慧體流量:

  1. 確認 Signature-Agent 標頭完全符合 "https://chatgpt.com"包括引號。

  2. well-known 端點擷取與簽章相關聯的公開金鑰。

  3. 依照 RFC 9421 的定義,驗證 Signature 標頭的真實性。

疑難排解提示

確認所有中繼代理都會保留 SignatureSignature-InputSignature-Agent 標頭。

這篇文章有幫助嗎?