設定推論掛鉤
為您的 Claude Enterprise 組織允許推論掛鉤、連接您的 AI 安全伺服器,並控制強制執行、失敗處理與逐步推出。
Inference hooks(推論掛鉤)會將您組織的提示傳送至您選擇的 AI 安全伺服器,並在 Claude 處理每個請求之前,先等待允許或拒絕的裁決(verdict)。本頁將逐步說明如何開啟此功能、連接您的伺服器,以及控制強制執行。若要了解推論掛鉤是什麼以及何時使用,請參閱推論掛鉤概覽。若要建置 AI 安全伺服器本身,請參閱開發推論掛鉤整合。
開始之前
您需要:
- claude.ai 中的
organization:manage權限,只有擁有者和主要擁有者角色擁有此權限。管理員角色沒有此權限。 - 一個接受判定請求的 AI 安全伺服器 HTTPS 端點:使用連接埠 443 的
https://URL,位於可公開路由的主機上,且無需重新導向即可連線。不支援反向通道主機(ngrok 及類似的通道服務):Anthropic 的網路政策會封鎖它們。請勿透過通道進行測試;請將您的伺服器託管在您控制的網域上。如需完整的託管需求,以及建置伺服器和驗證已簽署請求的方式,請參閱開發推論掛鉤整合。
設定推論掛鉤
共有三種強制執行狀態:
- 關閉: 當強制執行裁定關閉時,永遠不會聯絡您的 AI 安全伺服器,也不會檢查提示。
- 影子: 當強制執行裁定開啟且模式設為影子模式時,您的 AI 安全伺服器會接收提示並傳回判定,但不會封鎖任何內容。
- 強制執行: 當強制執行裁定開啟且模式設為允許此要求或封鎖請求時,拒絕判定會封鎖請求。
以下步驟會將新設定從關閉狀態帶到強制執行狀態。
為您的組織允許推論掛鉤
前往 claude.ai > 組織設定 > 資料與隱私權,找到推論掛鉤區段。開啟允許您的組織使用。
開啟此選項會解鎖推論掛鉤設定頁面,並一律強制將強制執行裁定設為關閉,因此允許此功能本身絕不會啟動檢查:即使是先前已開啟強制執行的設定,在您於最後一個步驟重新開啟強制執行裁定之前,仍會維持不檢查的狀態。
開啟推論掛鉤設定頁面
仍在資料與隱私權中,開啟推論掛鉤區段以進入推論掛鉤設定頁面。此頁面位於資料與隱私權之下,而不是設定導覽中的獨立項目,因此其導覽路徑顯示為資料與隱私權 / 推論掛鉤。在您儲存端點之前,頁面會警告提示尚未受到檢查,且強制執行裁定會維持關閉並顯示需要端點徽章。
設定您的端點
按一下設定以開啟設定端點對話方塊,並輸入端點 URL:接收判定請求的
https://URL。僅接受https://URL。此時對話方塊不會要求其他資訊:自訂請求標頭會在步驟 5 設定,失敗處理則在步驟 6 設定。按一下下一步以儲存。儲存端點後,按鈕會顯示為編輯。
新增請求標頭並測試連線
在簽署密鑰對話方塊上按一下下一步,會重新開啟端點對話方塊,此時多了兩個控制項:
- 自訂請求標頭: 最多 16 個靜態標頭,會隨每個判定請求一起傳送,讓您的 AI 安全伺服器能夠驗證呼叫者。標頭值會以加密方式儲存,且不會再次顯示;儲存後只會顯示標頭名稱。由於這些值為唯寫,儲存對標頭的任何變更都需要重新輸入每個值。變更端點 URL 會清除所有已儲存的標頭值,以確保您的憑證永遠不會被傳送到新的目的地;變更 URL 後請重新輸入這些值。標頭名稱必須使用標準 HTTP token 字元,並使用
-而非_,且不得與保留名稱衝突(請求框架標頭,例如Content-*和Host;代理與 cookie 標頭;用戶端位址標頭,例如X-Forwarded-*;webhook-*簽章標頭;以及X-Anthropic-*前綴)。值必須是可列印的 ASCII 字元。 - 測試連接: Claude 會將一個合成的測試提示傳送到表單中目前填寫的 URL 和標頭,而非已儲存的值,因此請在測試前重新輸入任何已儲存的標頭值。成功時,結果會回報您的 AI 安全伺服器針對測試提示回傳的是允許還是拒絕判定,這能讓您在開始強制執行之前發現「全部拒絕」的預設行為。它也會顯示 Anthropic 針對該次測試請求所測得的往返時間,該請求使用新連線,且此時間包含連線交握。
按一下儲存以儲存您輸入的任何標頭。
常見的失敗結果:
結果 檢查事項 URL 遭拒 URL 未通過結構檢查。請使用連接埠 443 的 https://URL。私人或內部 IP URL 的主機是私人或內部 IP 位址、IPv6 位址或 localhost。請使用可公開路由的主機。逾時 AI 安全伺服器未在逾時時間內回傳判定。 傳輸錯誤 DNS 解析、TLS 交握或連線失敗,或主機名稱解析為私人位址。 非 200 狀態 AI 安全伺服器回應的狀態碼不是 200。判定必須以 HTTP 200 回傳;不會跟隨重新導向,且重新導向會被視為失敗。 無法解析的回應 AI 安全伺服器有回應,但內容不是有效的判定。 需要簽署密鑰 您的組織沒有簽署密鑰,因此測試會以未簽署的方式傳送。請按一下請求簽署下的產生密鑰,然後再次測試。 - 自訂請求標頭: 最多 16 個靜態標頭,會隨每個判定請求一起傳送,讓您的 AI 安全伺服器能夠驗證呼叫者。標頭值會以加密方式儲存,且不會再次顯示;儲存後只會顯示標頭名稱。由於這些值為唯寫,儲存對標頭的任何變更都需要重新輸入每個值。變更端點 URL 會清除所有已儲存的標頭值,以確保您的憑證永遠不會被傳送到新的目的地;變更 URL 後請重新輸入這些值。標頭名稱必須使用標準 HTTP token 字元,並使用
選擇失敗處理方式與逾時
在失敗處理下,設定模式以選擇當 AI 安全伺服器無法連線或判定逾時時的處理方式:
- 封鎖請求:當您的 AI 安全伺服器無法提供裁決時停止推論(失敗即關閉,fail closed)。
- 允許此要求:讓請求在未經檢查的情況下繼續送往模型(失敗即開放,fail open)。
下拉式選單的第三個選項影子模式是逐步推出工具,而非失敗政策;請參閱影子模式。
接著設定提示詞判定逾時(毫秒):1 至 10,000 毫秒,預設為 5,000 毫秒。此預算涵蓋整個交換過程,較慢的裁決會被視為伺服器無法連線,因此請設定您的伺服器能夠穩定達成的最低值。
此區段中的變更會在您進行時即時儲存。首次儲存時,預設值為允許此要求與 5,000 毫秒。
選擇逐步推出百分比
在逐步推出下,設定已檢查的請求(%),以便在您讓 AI 安全伺服器上線的過程中,對一定百分比的請求執行檢查。此值範圍為 0 至 100:100 表示檢查所有請求,0 則關閉檢查。
每個請求會針對其整個對話輪次擲骰一次,因此單一對話可能在不同輪次間被部分檢查。落在取樣百分比之外的請求會在未經檢查的情況下繼續進行,即使失敗處理設為封鎖請求亦然。
開啟「強制執行裁定」
若要先針對即時流量評估裁決而不封鎖任何人,請在開啟強制執行之前將模式設為影子模式(步驟 6);請參閱影子模式。
開啟強制執行裁定,讓 Claude 對每個受管控的提示都依據您 AI 安全伺服器的判定進行把關,然後在對話方塊中確認,該對話方塊會重述您的失敗處理選擇。變更傳遞至每個 Anthropic 伺服器大約需要一分鐘;已在處理中的請求會依舊設定完成。關閉此選項會停止將提示傳送至您的 AI 安全伺服器,同樣大約在一分鐘內生效;您的設定會被保留。
位於強制執行裁定下方的 Validate tool calls(驗證工具呼叫) 也會將 Claude 每個回應中的工具呼叫傳送到您的 AI 安全伺服器,並在執行前等待其判定;請參閱工具呼叫訊框。在新設定中它預設為開啟。當強制執行裁定關閉時它不會有任何作用,且對它的變更與強制執行裁定一樣,大約需要一分鐘才能傳達到每個 Anthropic 伺服器。
影子模式
「Shadow mode」(影子模式)會針對即時流量執行您的掛鉤,而不封鎖任何內容。您的 AI 安全伺服器會接收受管控的提示並傳回判定,方式與強制執行時完全相同,但不會封鎖任何內容:每個請求都會繼續傳送至模型,即使您的伺服器拒絕它或無法連線也是如此,且終端使用者不會察覺任何異狀。請使用它在開始強制執行之前,依據您組織的真實流量調整您的政策。開啟 Validate tool calls 時,您的伺服器在影子模式下也會接收工具呼叫訊框,且不會封鎖任何工具呼叫。
若要使用影子模式,請在失敗處理下將模式設為影子模式,然後開啟強制執行裁定,讓提示流向您的 AI 安全伺服器。當它處於啟用狀態時,設定頁面會顯示影子模式——不封鎖標記。若要離開影子模式,請將模式設回允許此要求或封鎖請求;一旦強制執行開啟,裁決便會再次被強制執行。
排除項目
在 Who is inspected(檢查對象) 下,開啟 Limit by role(依角色限制) 後,選取其成員不受推論掛鉤涵蓋的角色:這些成員的提示絕不會被傳送至您的 AI 安全伺服器。只有您組織建立的自訂角色可以被排除;內建角色不會出現在選項中。請在角色選取器中選取這些角色(其預留位置文字為選取要排除的角色),並從角色管理頁面(管理角色)管理每個角色的持有者;變更排除項目需要身分管理權限。此清單預設為空,且在未排除任何角色時,每個受管控的請求都會受到檢查,除非 Inspect(檢查) 設為 Only selected roles(僅限所選角色)。
排除適用於使用者的互動式工作階段。對排除清單的變更會以角色權限變更(rbac_role_permission_added 和 rbac_role_permission_removed)的形式記錄在您組織的活動摘要中。
僅檢查選取的角色
Who is inspected 區段中的所有內容都由一個開關 Limit by role 控制。當您開啟此開關時,Inspect 會從 Everyone except excluded roles(已排除角色以外的所有人) 開始,並依照上述說明在其下方選取排除的角色。
若要先在組織的一部分試用推論掛鉤,請開啟 Limit by role,將 Inspect 設為 Only selected roles,然後在開啟的對話方塊中選取角色。從那時起,只有被設為自訂角色且被指派了所選角色的成員才會受到檢查。被設為其他任何角色(例如使用者或擁有者)的成員不會受到檢查,即使他們被指派了所選角色也是如此。如果您被設為擁有者或主要擁有者,這也包括您自己。切換之前請移除所有排除的角色:組織只能使用排除項目或選取的角色,不能兩者並用。切換後,請在 Inspect 下的角色選取器中新增或移除角色。若要恢復檢查所有人,請關閉 Limit by role:在您確認後,這會移除所有排除的角色並關閉 Only selected roles。
當設定為 Only selected roles 時:
- 功能存取權為所有功能或所有正式發行項目的自訂角色,與其他任何角色一樣,只有在您選取時才會計入。
- 如果沒有任何被設為自訂角色的成員被指派所選角色,則不會檢查任何成員。
- 背後沒有成員的請求不會受到檢查,例如使用 API 金鑰發出的請求,以及 Slack 中的 Claude Tag 對話。
對 Inspect 的變更以及對受檢查角色的變更,都會記錄在您組織的活動摘要中。
提示詞遭封鎖時的自訂訊息
在提示詞遭封鎖時的自訂訊息下,設定最多 500 個字元的自訂文字,當您的 AI 安全伺服器拒絕請求時,此文字會附加在終端使用者看到的錯誤之後(通常是應聯繫誰或在何處申請例外)。最終訊息為您 AI 安全伺服器針對每個請求的 deny_reason(若有)、一個空行,然後是此文字。若未設定自訂文字,內建的預設訊息會引導使用者聯繫其管理員;您也可以完全關閉附加訊息,讓使用者只看到 deny_reason。
監控您的 AI 安全伺服器
推論掛鉤設定頁面的端點健康狀態區域會顯示:
- 端點狀態: Healthy、Tripped、未強制執行,或在儲存端點之前顯示未設定。
- 每分鐘失敗次數: 過去 2 分鐘內 webhook 失敗次數的平均值。
- 封鎖率: 拒絕判定佔您 AI 安全伺服器判定的比例,在推出百分比低於 100 時顯示。
- 斷路器已觸發: 斷路器上次跳脫的時間(若曾跳脫)。
- 近期錯誤: 每個項目會顯示失敗發生的時間、錯誤類型和類別。類別為
webhook_error表示您的端點或與其之間的連線發生問題,為relay_error則表示 Anthropic 系統內部發生失敗。DlpWebhookStatusError項目也可能顯示您的 AI 安全伺服器傳回的 HTTP 狀態,以及 Anthropic 傳送的請求主體大小,例如HTTP 413·1.3 MB。項目絕不會包含請求內容或您的端點 URL。此清單會保留最近 10 次失敗,並在最後一次失敗一小時後清除。
近期錯誤中的錯誤類型意義如下:
| 顯示的錯誤 | 意義 | 是否計入斷路器 |
|---|---|---|
DlpWebhookTimeoutError · webhook_error | 您的 AI 安全伺服器未在您設定的提示詞判定逾時(毫秒) 內傳回判定。 | 是 |
DlpWebhookStatusError · webhook_error | 您的 AI 安全伺服器以 200 以外的 HTTP 狀態回應,例如重新導向。 | 是 |
DlpWebhookResponseError · webhook_error | 您的 AI 安全伺服器回應 200,但內容不是有效的判定,或大於 64 KiB。 | 是 |
DlpWebhookTransportError · webhook_error | 在收到完整回應之前連線失敗或中斷:例如主機名稱無法解析或解析為私人位址、連線遭拒或重設,或 TLS 交握失敗。Anthropic 端的網路問題也可能以此方式呈現。 | 否 |
DlpWebhookDisallowedAddressError · webhook_error | 端點 URL 的主機是私人或內部 IP 位址、IPv6 位址或 localhost。解析為此類位址的主機名稱則會顯示為傳輸錯誤。 | 是 |
DlpWebhookBlockedError · webhook_error | 端點 URL 不是連接埠 443 上的 https:// URL,或無法解析,因此未傳送任何請求。 | 否 |
DlpWebhookRelayError · relay_error | 失敗發生在 Anthropic 系統內部,通常未聯繫您的 AI 安全伺服器。 | 否 |
在影子模式下,任何錯誤都不會計入斷路器。
此面板為盡力而為:若 Anthropic 無法讀取計數器,它會顯示零次失敗且無錯誤,而非顯示其自身的錯誤,因此看起來健康的面板本身並不能證明您的 AI 安全伺服器是健康的。每分鐘失敗次數會計算每一次失敗,包括永遠不會使斷路器跳脫的網路與 DNS 錯誤,因此它可能很高,而斷路器已觸發仍維持空白。
斷路器
可歸因於您 AI 安全伺服器的持續 webhook 失敗會使「circuit breaker」(斷路器)跳脫,進而停止強制執行:不再聯繫您的伺服器,且您的失敗處理選擇會套用至每個受檢查的請求。若選擇封鎖請求,您組織中的使用者會被封鎖,直到斷路器重設為止。當斷路器跳脫時,管理員也會在 claude.ai 通知中心收到通知。
每次跳脫也會以 inference_hooks_circuit_breaker_tripped 活動的形式記錄在您組織的 Activity Feed 中,讓您的安全團隊或廠商能透過其既有的監控機制(例如匯入此動態的 SIEM)針對跳脫發出警示。每次跳脫只會記錄一個活動,而不是每個受影響的請求各記錄一個。記錄需要為您的組織啟用 Compliance API;請參閱設定 Compliance API。
若要復原,請修復伺服器,然後重新開啟強制執行裁定以重設斷路器。
斷路器也可以自行重設。從跳脫後 10 分鐘開始,Anthropic 會在背景向您的伺服器傳送測試請求,以檢查伺服器是否已復原,頻率最多約每分鐘一次;此過程不涉及任何使用者請求。如果您的伺服器回應有效的判定(允許或拒絕皆可),斷路器就會重設,強制執行也會恢復。否則斷路器會維持跳脫狀態,檢查也會持續進行。
自動復原僅在您的推論掛鉤設定自跳脫後未曾變更的情況下執行。如果您在跳脫後變更任何推論掛鉤設定(包括輪替簽署密鑰),檢查就會停止,斷路器也不再自行重設;請在伺服器修復後重新開啟強制執行裁定。自動復原僅適用於跳脫:如果您自行關閉強制執行裁定,強制執行會維持關閉,直到您重新開啟為止。
輪替您的簽署密鑰
按一下請求簽署下的輪換密鑰以更換您的簽署密鑰。如果您的組織尚未有密鑰,同一個按鈕會顯示為產生密鑰,並建立第一個密鑰。輪替是立即切換:新密鑰會被產生並僅顯示一次,舊密鑰將無法再取得,且任何請求都不會同時以兩個密鑰簽署,因此沒有可依賴的重疊期間。
以先前密鑰簽署的請求在輪替後仍可能短暫抵達;驗證簽章說明了您的 AI 安全伺服器應如何處理切換。
稽核軌跡
推論掛鉤活動會記錄在您組織的活動摘要中:設定變更、拒絕、斷路器跳脫,以及因無法取得判定而在未經檢查的情況下繼續進行的請求。最後一種只有在強制執行裁定開啟且模式為允許此要求時才會記錄。其原因為 endpoint_timeout、呼叫您 AI 安全伺服器時發生任何其他問題的 endpoint_error,或 Anthropic 端失敗的 internal_error。在封鎖請求或影子模式下,失敗的請求不會個別記錄。斷路器的自動復原在任何模式下都不會被記錄。斷路器跳脫期間,不會記錄任何個別請求的推論掛鉤活動;跳脫活動即為活動摘要中該期間的記錄。拒絕記錄帶有識別碼,讓您能將每個拒絕與您自己系統中的對應記錄進行關聯。
關閉推論掛鉤
關閉有兩個層級:
- 在推論掛鉤設定頁面上關閉強制執行裁定:大約在一分鐘內,您組織的提示將停止傳送至您的 AI 安全伺服器;已在處理中的請求會依舊設定完成。設定頁面仍可使用,因此您可以在處理 AI 安全伺服器期間使用此方式暫停強制執行。
- 在資料與隱私權設定中關閉允許您的組織使用:提示不再受到檢查,且推論掛鉤設定會變為無法使用,直到您重新開啟為止。無論哪種方式,您的端點設定、自訂標頭與簽署密鑰都會被保留;重新開啟會強制將強制執行裁定設為關閉並清除已跳脫的斷路器,因此請在您準備好時再次開啟強制執行。
後續步驟
這個頁面有幫助嗎?