APIM 原則參考

適用於:所有 API 管理 層

本節提供所有 API 管理 原則的簡短描述和參考文章連結。 指出支援每個原則的 API 管理 閘道。 如需詳細的原則設定和範例,請參閱鏈接的參考文章。

關於原則的詳細資訊:

重要

依訂用帳戶限制呼叫頻率依訂用帳戶設定使用量配額與訂用帳戶金鑰有相依性。 套用其他原則時,不需要訂用帳戶金鑰。

速率限制和配額

原則 描述 傳統 V2 耗用 自我裝載
依訂用帳戶限制通話率 藉由限制每個訂用帳戶的呼叫速率來防止 API 使用量尖峰。 Yes .是 .是 Yes
依索引鍵限制呼叫速率 藉由限制每個索引鍵的呼叫速率來防止 API 使用量尖峰。 Yes .是 Yes
依訂用帳戶設定使用量配額 可讓您根據每個訂用帳戶強制執行可更新或存留期通話量和/或頻寬配額。 Yes .是 .是 Yes
依金鑰設定使用量配額 可讓您根據每個金鑰強制執行可更新或存留期的通話量和/或頻寬配額。 Yes
限制並行 防止封入的原則一次執行超過指定的要求數目。 Yes .是 .是 Yes

驗證和授權

原則 描述 傳統 V2 耗用 自我裝載
檢查 HTTP 標頭 強制執行 HTTP 標頭的存在和 / 或值。 Yes .是 .是 Yes
取得授權內容 取得指定連接在 API 管理 實例中設定之認證提供者的授權內容。 Yes .是 .是 No
限制呼叫端 IP 篩選條件(允許/拒絕)來自特定IP位址和/或位址範圍的呼叫。 Yes .是 .是 Yes
驗證 Microsoft Entra 令牌 強制執行從指定的 HTTP 標頭、查詢參數或令牌值擷取的 Microsoft Entra(先前稱為 Azure Active Directory)JWT 的存在和有效性。 Yes .是 .是 Yes
驗證 JWT 強制執行從指定的 HTTP 標頭、查詢參數或令牌值擷取的 JWT 存在和有效性。 Yes .是 .是 Yes
驗證客戶端憑證 強制用戶端提供給 API 管理 實例的憑證符合指定的驗證規則和宣告。 Yes .是 .是 Yes
使用基本身份驗證進行驗證 使用基本身份驗證向後端服務進行驗證。 Yes .是 .是 Yes
使用客戶端憑證進行驗證 使用客戶端憑證向後端服務進行驗證。 Yes .是 .是 Yes
使用受控識別進行驗證 使用 受控識別向後端服務進行驗證。 Yes .是 .是 Yes

內容驗證

原則 描述 傳統 V2 耗用 自我裝載
驗證內容 根據一或多個 API 架構驗證要求或響應主體的大小或內容。 支援的結構描述格式為 JSON 和 XML。 Yes .是 .是 Yes
驗證 GraphQL 要求 驗證並授權 GraphQL API 的要求。 Yes .是 .是 Yes
驗證 OData 要求 驗證 OData API 的要求,以確保符合 OData 規格。 Yes .是 .是 Yes
驗證參數 根據 API 架構驗證要求標頭、查詢或路徑參數。 Yes .是 .是 Yes
驗證標頭 根據 API 架構驗證回應標頭。 Yes .是 .是 Yes
驗證狀態代碼 驗證 API 架構回應中的 HTTP 狀態代碼。 Yes .是 .是 Yes

路由

原則 描述 傳統 V2 耗用 自我裝載
轉寄要求 將要求轉送至後端服務。 Yes .是 .是 Yes
設定後端服務 將傳入要求的後端服務基底 URL 變更為 URL 或 後端。 參考後端資源可讓您在單一位置管理後端服務基底 URL 和其他設定。 同時實作跨後端服務和斷路器規則集區的流量負載平衡,以保護後端免於太多要求。 Yes .是 .是 Yes
設定 HTTP Proxy 可讓您透過 HTTP Proxy 路由傳送轉送的要求。 Yes .是 .是 Yes

快取功能

原則 描述 傳統 V2 耗用 自我裝載
從快取取得 執行快取查閱,並在可用時傳回有效的快取回應。 Yes .是 .是 Yes
儲存至快取 根據指定的快取控制組態來快取回應。 Yes .是 .是 Yes
從快取取得值 依索引鍵擷取快取的專案。 Yes .是 .是 Yes
將值儲存在快取中 依索引鍵將項目儲存在快取中。 Yes .是 .是 Yes
從快取中移除值 依索引鍵移除快取中的專案。 Yes .是 .是 Yes

轉換

原則 描述 傳統 V2 耗用 自我裝載
設定要求方法 可讓您變更要求的 HTTP 方法。 Yes .是 .是 Yes
設定狀態代碼 將 HTTP 狀態代碼變更為指定的值。 Yes .是 .是 Yes
設定變數 在具名 內容 變數中保存值,以供稍後存取。 Yes .是 .是 Yes
設定本文 設定要求或回應的訊息本文。 Yes .是 .是 Yes
設定 HTTP 標頭 指派值給現有的回應和/或要求標頭,或是新增新的回應和/或要求標頭。 Yes .是 .是 Yes
設定查詢字串參數 加入、取代的值或刪除要求查詢字串參數。 Yes .是 .是 Yes
重寫 URL 將要求 URL 從公用格式轉換成 Web 服務所需的格式。 Yes .是 .是 Yes
將 JSON 轉換成 XML 將要求或回應本文從 JSON 轉換為 XML。 Yes .是 .是 Yes
將 XML 轉換成 JSON 將要求或回應本文從 XML 轉換為 JSON。 Yes .是 .是 Yes
在本文中尋找並取代字串 尋找要求或回應子字串,並取代為不同的子字串。 Yes .是 .是 Yes
遮罩內容中的 URL 重寫響應主體中的連結,以便透過閘道指向對等的連結。 Yes .是 .是 Yes
使用 XSLT 轉換 XML 將 XSL 轉換套用至要求或回應本文中的 XML。 Yes .是 .是 Yes
傳回回應 中止管線執行,並將指定的回應直接傳回給呼叫端。 Yes .是 .是 Yes
模擬回應 中止管線執行,並將仿真的回應直接傳回給呼叫端。 Yes .是 .是 Yes

跨網域

原則 描述 傳統 V2 耗用 自我裝載
允許跨網域呼叫 讓 API 可從 Adobe Flash 和 Microsoft Silverlight 瀏覽器型用戶端存取。 Yes .是 .是 Yes
CORS 將跨原始來源資源分享 (CORS) 支援新增至作業或 API,以允許來自瀏覽器型用戶端的跨網域呼叫。 Yes .是 .是 Yes
JSONP 將具有填補 (JSONP) 支援的 JSON 新增至作業或 API,以允許來自 JavaScript 瀏覽器型用戶端的跨網域呼叫。 Yes .是 .是 Yes

整合和外部通訊

原則 描述 傳統 V2 耗用 自我裝載
傳送要求 將要求傳送至指定的URL。 Yes .是 .是 Yes
傳送單向要求 將要求傳送至指定的 URL,而不需要等候回應。 Yes .是 .是 Yes
記錄至事件中樞 將指定格式的訊息傳送至 Logger 實體所定義的事件中樞。 Yes .是 .是 Yes
將要求傳送至服務 (Dapr) 使用 Dapr 運行時間找出並可靠地與 Dapr 微服務通訊。 若要深入瞭解 Dapr 中的服務引動,請參閱此讀我檔案的描述。 No Yes
將訊息傳送至 Pub/Sub 主題 (Dapr) 使用 Dapr 運行時間將訊息發佈至發佈/訂閱主題。 如果要深入瞭解 Dapr 中的發佈/訂閱傳訊,請參閱此 讀我檔案的描述。 No Yes
觸發程式輸出系結 (Dapr) 使用 Dapr 執行時間透過輸出系結叫用外部系統。 如果要深入瞭解 Dapr 中的繫結程序,請參閱此讀我檔案的描述。 No Yes

記錄

原則 描述 傳統 V2 耗用 自我裝載
追蹤 在測試控制台、Application Insights 遙測和資源記錄中,將自定義追蹤新增至 要求追蹤 輸出。 Yes 1 Yes
發出計量 在執行時將自定義計量傳送至 Application Insights。 Yes .是 .是 Yes

1 在 V2 閘道中,原則 trace 目前不會在測試控制台中新增追蹤輸出。

GraphQL 解析程式

原則 描述 傳統 V2 耗用 自我裝載
解析程式的 Azure SQL 數據源 設定 Azure SQL 要求和選擇性回應,以解析 GraphQL 架構中物件類型和欄位的數據。 Yes .是 No
解析程式的 Cosmos DB 數據源 設定 Cosmos DB 要求和選擇性回應,以解析 GraphQL 架構中物件類型和欄位的數據。 Yes .是 No
解析程式的 HTTP 資料源 設定 HTTP 要求,並選擇性地設定 HTTP 回應,以解析 GraphQL 架構中物件類型和欄位的數據。 Yes .是 .是 No
將事件發佈至 GraphQL 訂用帳戶 將事件發佈至 GraphQL API 架構中指定的一或多個訂用帳戶。 針對結構描述中的另一種作業類型 (例如變動),在 GraphQL 解析器中設定適用於相關欄位的原則。 Yes .是 .是 No

原則控制和流程

原則 描述 傳統 V2 耗用 自我裝載
控制流程 根據布爾 表達式評估的結果,有條件地套用原則語句。 Yes .是 .是 Yes
包含片段 在原則定義中插入原則片段。 Yes .是 .是 Yes
重試 如果符合條件,則重試封閉式原則語句的執行。 系統會在指定的時間間隔重複執行,直到達到指定的重試計數值。 Yes .是 .是 Yes
等候 等候封閉式 傳送要求從快取取得值,或 控制流程 原則完成,再繼續進行。 Yes .是 .是 Yes

如需使用原則的詳細資訊,請參閱: