APIM 原則參考
適用於:所有 APIM 層
本節提供所有 APIM 原則的簡短描述和參考文章連結。 指出支援每個原則的 APIM 閘道。 如需詳細的原則設定和範例,請參閱連結的參考文章。
關於原則的詳細資訊:
速率限制和配額
原則 |
描述 |
傳統 |
V2 |
耗用 |
自我裝載 |
依訂閱限制呼叫率 |
限制呼叫率以防止個別訂用帳戶的 API 使用量暴增。 |
Yes |
.是 |
.是 |
Yes |
依金鑰限制呼叫率 |
限制呼叫率以防止個別金鑰的 API 使用量暴增。 |
Yes |
是 |
無 |
Yes |
依訂閱設定使用量配額 |
可讓您以訂用帳戶為單位,強制採用可續訂或有存留期呼叫量和/或頻寬配額。 |
Yes |
.是 |
.是 |
Yes |
依金鑰設定使用量配額 |
可讓您以金鑰為單位,強制採用可續訂或有存留期呼叫量和/或頻寬配額。 |
是 |
無 |
無 |
Yes |
限制並行 |
防止超過指定之要求數目同時執行括住的原則。 |
Yes |
.是 |
.是 |
Yes |
限制 Azure OpenAI 服務權杖使用量 |
藉由限制每個計算金鑰的大型語言模型權杖,防止 Azure OpenAI API 使用量暴增。 |
Yes |
是 |
無 |
No |
限制大型語言模型 API 權杖使用方式 |
藉由限制每個計算金鑰的大型語言模型 (LLM) 權杖,防止 LLM API 使用量暴增。 |
Yes |
是 |
無 |
No |
驗證與授權
原則 |
描述 |
傳統 |
V2 |
耗用 |
自我裝載 |
檢查 HTTP 標頭 |
強制 HTTP 標頭的存在和/或值。 |
Yes |
.是 |
.是 |
Yes |
取得授權內容 |
取得在 APIM 執行個體中所設定之指定連線到認證提供者的授權內容。 |
Yes |
.是 |
是 |
No |
限制呼叫端 IP |
篩選 (允許/拒絕) 來自特定 IP 位址和/或位址範圍的呼叫。 |
Yes |
.是 |
.是 |
Yes |
驗證 Microsoft Entra 權杖 |
強制擷取自指定 HTTP 標頭、查詢參數或權杖值的 Microsoft Entra (先前稱為 Azure Active Directory) JWT 必須存在且具有效性。 |
Yes |
.是 |
.是 |
Yes |
驗證 JWT |
強制擷取自指定 HTTP 標頭、查詢參數或權杖值的 JWT 必須存在且具有效性。 |
Yes |
.是 |
.是 |
Yes |
驗證用戶端憑證 |
強制用戶端向 APIM 執行個體呈現的憑證符合指定的驗證規則和宣告。 |
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 |
驗證狀態碼 |
驗證 HTTP 狀態碼,藉以回應 API 結構描述。 |
Yes |
.是 |
.是 |
Yes |
路由
原則 |
描述 |
傳統 |
V2 |
耗用 |
自我裝載 |
轉寄要求 |
將要求轉寄至後端服務。 |
Yes |
.是 |
.是 |
Yes |
設定後端服務 |
將傳入要求的後端服務基底 URL 變更為 URL 或後端。 參考後端資源可讓您在單一位置管理後端服務基底 URL 和其他設定。 同時實作跨後端服務集區的流量負載平衡和斷路器規則,以保護後端免於太多要求。 |
Yes |
.是 |
.是 |
Yes |
設定 HTTP Proxy |
可讓您透過 HTTP Proxy 路由轉送要求。 |
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 |
耗用 |
自我裝載 |
允許跨網域呼叫 |
允許從 Adobe Flash 和 Microsoft Silverlight 瀏覽器型用戶端存取 API。 |
Yes |
.是 |
.是 |
Yes |
CORS |
將跨原始資源共用 (CORS) 支援加入至作業或 API,以允許從瀏覽器型用戶端執行跨網域呼叫。 |
Yes |
.是 |
.是 |
Yes |
JSONP |
將「JSON 搭配填補」(JSONP) 支援加入至作業或 API,以允許從 JavaScript 瀏覽器型用戶端執行跨網域呼叫。 |
Yes |
.是 |
.是 |
Yes |
整合和外部通訊
原則 |
描述 |
傳統 |
V2 |
耗用 |
自我裝載 |
傳送要求 |
將要求傳送至指定的 URL。 |
Yes |
.是 |
.是 |
Yes |
傳送單向要求 |
將要求傳送到指定的 URL,無須等待回應。 |
Yes |
.是 |
.是 |
Yes |
記錄到事件中樞 |
將指定格式的訊息傳送至記錄器實體所定義的事件中樞。 |
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 |
發出 Azure OpenAI 權杖計量 |
透過 Azure OpenAI 服務 API 將計量傳送至 Application Insights,以取用大型語言模型權杖。 |
Yes |
是 |
無 |
Yes |
發出大型語言模型 API 權杖計量 |
透過大型語言模型 (LLM) API 將計量傳送至 Application Insights,以取用 LLM 權杖。 |
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 |
相關內容
如需使用原則的詳細資訊,請參閱: