活动
你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
API 管理策略参考
适用于:所有 API 管理层级
本部分提供所有 API 管理策略的参考文章的简要描述和链接。 说明了支持每个策略的 API 管理网关。 有关详细的策略设置和示例,请查看链接的参考文章。
有关策略的详细信息:
重要
按订阅限制调用率和按订阅设置使用量配额依赖于订阅密钥。 应用其他策略时不需要订阅密钥。
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
按订阅限制调用率 | 通过在每个订阅的基础上限制调用速率,防止出现 API 使用峰值。 | 是 | 是 | 是 | 是 | 是 |
按密钥限制调用速率 | 通过在每个密钥的基础上限制调用速率,防止出现 API 使用峰值。 | 是 | 是 | No | 是 | 是 |
按订阅设置使用量配额 | 允许根据订阅强制实施可续订或有生存期的调用量和/或带宽配额。 | 是 | 是 | 是 | 是 | 是 |
按密钥设置使用量配额 | 允许根据密钥强制实施可续订或有生存期的调用量和/或带宽配额。 | 是 | 否 | 否 | 是 | 是 |
限制并发 | 阻止括住的策略一次执行超过指定数量的请求。 | 是 | 是 | 是 | 是 | 是 |
限制 Azure OpenAI 服务令牌的使用 | 通过限制每个计算密钥的大型语言模型令牌,防止 Azure OpenAI API 使用高峰。 | 是 | 是 | No | 是 | 是 |
限制大语言模型 API 令牌使用 | 通过限制每个计算密钥的 LLM 令牌,防止大型语言模型 (LLM) API 使用率峰值。 | 是 | 是 | No | 是 | 是 |
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
检查 HTTP 标头 | 强制实施 HTTP 标头的存在和/或值。 | 是 | 是 | 是 | 是 | 是 |
获取授权上下文 | 获取与 API 管理实例中配置的凭据提供程序的指定连接的授权上下文。 | 是 | 是 | 是 | 否 | 否 |
限制调用方 IP | 筛选(允许/拒绝)来自特定 IP 地址和/或地址范围的调用。 | 是 | 是 | 是 | 是 | 是 |
验证 Microsoft Entra 令牌 | 强制要求从指定 HTTP 标头、查询参数或令牌值中提取的 Microsoft Entra(以前称为 Azure Active Directory)JWT 存在且有效。 | 是 | 是 | 是 | 是 | 是 |
验证 JWT | 强制要求从指定 HTTP 标头、查询参数或令牌值提取的 JWT 存在且有效。 | 是 | 是 | 是 | 是 | 是 |
验证客户端证书 | 强制客户端提供给 API 管理实例的证书与指定的验证规则和声明相匹配。 | 是 | 是 | 是 | 是 | 是 |
使用基本方法进行身份验证 | 通过后端服务(使用基本身份验证)进行身份验证。 | 是 | 是 | 是 | 是 | 是 |
使用客户端证书进行身份验证 | 通过后端服务(使用客户端证书)进行身份验证。 | 是 | 是 | 是 | 是 | 是 |
使用托管标识进行身份验证 | 通过后端服务使用托管标识进行身份验证。 | 是 | 是 | 是 | 是 | 否 |
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
验证内容 | 根据一个或多个 API 架构验证请求或响应正文的大小或内容。 支持的架构格式为 JSON 和 XML。 | 是 | 是 | 是 | 是 | 是 |
验证 GraphQL 请求 | 验证对 GraphQL API 的请求并授权。 | 是 | 是 | 是 | 是 | 否 |
验证 OData 请求 | 验证对 OData API 的请求,以确保符合 OData 规范。 | 是 | 是 | 是 | 是 | 是 |
验证参数 | 根据 API 架构验证请求标头、查询或路径参数。 | 是 | 是 | 是 | 是 | 是 |
验证标头 | 根据 API 架构验证响应头。 | 是 | 是 | 是 | 是 | 是 |
验证状态代码 | 根据 API 架构验证响应中的 HTTP 状态代码。 | 是 | 是 | 是 | 是 | 是 |
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
转发请求 | 将请求转发到后端服务。 | 是 | 是 | 是 | 是 | 是 |
设置后端服务 | 将传入请求的后端服务基 URL 更改为 URL 或后端。 通过引用后端资源,可以在单个位置管理后端服务基 URL 和其他设置。 此外,还可以实施跨后端服务池的流量负载均衡和断路器规则,以保护后端免受过多请求。 | 是 | 是 | 是 | 是 | 是 |
设置 HTTP 代理 | 允许通过 HTTP 代理路由转发请求。 | 是 | 是 | 是 | 是 | 是 |
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
从缓存中获取 | 执行缓存查找,并在缓存可用时返回有效的缓存响应。 | 是 | 是 | 是 | 是 | 是 |
存储到缓存 | 根据指定的缓存控制配置来缓存响应。 | 是 | 是 | 是 | 是 | 是 |
从缓存中获取值 | 按键检索缓存的项。 | 是 | 是 | 是 | 是 | 是 |
在缓存中存储值 | 按键将项存储在缓存中。 | 是 | 是 | 是 | 是 | 是 |
从缓存中删除值 | 按键从缓存中删除项。 | 是 | 是 | 是 | 是 | 是 |
获取 Azure OpenAI API 请求的缓存响应 | 在 Azure OpenAI API 缓存中使用语义搜索执行查找,并在可用时返回有效的缓存响应。 | 是 | 是 | 是 | 是 | 否 |
存储用于缓存的 Azure OpenAI API 请求的响应 | 根据 Azure OpenAI API 缓存配置缓存响应。 | 是 | 是 | 是 | 是 | 否 |
获取大型语言模型 API 请求的缓存响应 | 在大型语言模型 API 缓存中使用语义搜索执行查找,并在可用时返回有效的缓存响应。 | 是 | 是 | 是 | 是 | 否 |
存储用于缓存的大型语言模型 API 请求的响应 | 根据大型语言模型 API 缓存配置缓存响应。 | 是 | 是 | 是 | 是 | 否 |
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
设置请求方法 | 允许更改请求的 HTTP 方法。 | 是 | 是 | 是 | 是 | 是 |
设置状态代码 | 将 HTTP 状态代码更改为指定的值。 | 是 | 是 | 是 | 是 | 是 |
设置变量 | 在名为 context 的变量中保留一个值,以供以后访问。 | 是 | 是 | 是 | 是 | 是 |
设置正文 | 设置请求或响应的消息正文。 | 是 | 是 | 是 | 是 | 是 |
设置 HTTP 标头 | 向现有的响应和/或请求标头赋值,或者添加新的响应和/或请求标头。 | 是 | 是 | 是 | 是 | 是 |
设置查询字符串参数 | 添加、替换请求查询字符串参数的值,或将该参数删除。 | 是 | 是 | 是 | 是 | 是 |
重写 URL | 将请求 URL 从其公用格式转换为 Web 服务所需的格式。 | 是 | 是 | 是 | 是 | 是 |
将 JSON 转换为 XML | 将请求或响应正文从 JSON 转换为 XML。 | 是 | 是 | 是 | 是 | 是 |
将 XML 转换为 JSON | 将请求或响应正文从 XML 转换为 JSON。 | 是 | 是 | 是 | 是 | 是 |
在正文中查找并替换字符串 | 查找请求或响应子字符串并将其替换为不同的子字符串。 | 是 | 是 | 是 | 是 | 是 |
在内容中屏蔽 URL | 重写(屏蔽)响应正文中的链接,使其通过网关指向等效的链接。 | 是 | 是 | 是 | 是 | 是 |
使用 XSLT 转换 XML | 在请求或响应正文中将 XSL 转换应用到 XML。 | 是 | 是 | 是 | 是 | 是 |
返回响应 | 中止管道执行,将指定的响应直接返回给调用方。 | 是 | 是 | 是 | 是 | 是 |
模拟响应 | 中止管道执行,将模拟的响应直接返回给调用方。 | 是 | 是 | 是 | 是 | 是 |
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
允许跨域调用 | 使 API 可供基于 Adobe Flash 和 Microsoft Silverlight 浏览器的客户端访问。 | 是 | 是 | 是 | 是 | 是 |
CORS | 向操作或 API 添加跨域资源共享 (CORS) 支持,以便通过基于浏览器的客户端进行跨域调用。 | 是 | 是 | 是 | 是 | 是 |
JSONP | 向操作或 API 添加 JSON with Padding (JSONP) 支持,以便通过基于 JavaScript 浏览器的客户端进行跨域调用。 | 是 | 是 | 是 | 是 | 是 |
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
发送请求 | 将请求发送到指定的 URL。 | 是 | 是 | 是 | 是 | 是 |
发送单向请求 | 将请求发送到指定的 URL,无需等待响应。 | 是 | 是 | 是 | 是 | 是 |
记录到事件中心 | 将指定格式的消息发送到记录器实体定义的事件中心。 | 是 | 是 | 是 | 是 | 是 |
发送对服务的请求 (Dapr) | 使用 Dapr 运行时查找 Dapr 微服务并与之进行可靠的通信。 若要了解有关 Dapr 中服务调用的详细信息,请参阅这个 README 文件中的说明。 | 否 | No | 否 | 是 | 否 |
将消息发送到发布/订阅主题 (Dapr) | 使用 Dapr 运行时将消息发布到发布/订阅主题。 若要了解有关 Dapr 中发布/订阅消息的详细信息,请参阅这个 README 文件中的说明。 | 否 | No | 否 | 是 | 否 |
触发器输出绑定 (Dapr) | 使用 Dapr 运行时通过输出绑定调用外部系统。 若要了解有关 Dapr 中绑定的详细信息,请参阅此 README 文件中的说明。 | 否 | No | 否 | 是 | 否 |
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
跟踪 | 将自定义跟踪添加到测试控制台、Application Insights 遥测和资源日志中的请求跟踪输出中。 | 是 | 是1 | 是 | 是 | 是 |
发出指标 | 在执行时将自定义指标发送到 Application Insights。 | 是 | 是 | 是 | 是 | 是 |
发出 Azure OpenAI 令牌指标 | 通过 Azure OpenAI 服务 API 将指标发送到 Application Insights 以使用大型语言模型令牌。 | 是 | 是 | No | 是 | 是 |
发出大型语言模型 API 令牌指标 | 通过 LLM API 将指标发送到 Application Insights,以使用大型语言模型 (LLM) 令牌。 | 是 | 是 | No | 是 | 是 |
1 在 V2 网关中,trace
策略当前不会在测试控制台中添加跟踪输出。
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
解析程序的 Azure SQL 数据源 | 配置 Azure SQL 请求和可选响应,以解析 GraphQL 架构中对象类型和字段的数据。 | 是 | 是 | 否 | No | 否 |
解析程序的 Cosmos DB 数据源 | 配置 Cosmos DB 请求和可选响应,以解析 GraphQL 架构中对象类型和字段的数据。 | 是 | 是 | 否 | No | 否 |
解析程序的 HTTP 数据源 | 配置 HTTP 请求,并选择性地配置 HTTP 响应以解析 GraphQL 架构中对象类型和字段的数据。 | 是 | 是 | 是 | 否 | 否 |
将事件发布到 GraphQL 订阅 | 将事件发布到 GraphQL API 架构中指定的一个或多个订阅。 为架构中的相关字段配置 GraphQL 解析程序中的策略,以便用于另一种操作类型,如变更。 | 是 | 是 | 是 | 否 | 否 |
策略 | 说明 | 经典 | V2 | 消耗 | 自承载 | 工作区 |
---|---|---|---|---|---|---|
控制流 | 基于布尔表达式的计算结果,有条件地应用策略语句。 | 是 | 是 | 是 | 是 | 是 |
包含片段 | 在策略定义中插入策略片段。 | 是 | 是 | 是 | 是 | 是 |
重试 | 重试执行括住的策略语句,直到符合条件为止。 系统会按指定的时间间隔重复执行,直到达到指定的重试计数为止。 | 是 | 是 | 是 | 是 | 是 |
Wait | 在继续下一步之前,等待括住的发送请求、从缓存中获取值或控制流策略完成。 | 是 | 是 | 是 | 是 | 是 |
有关使用策略的详细信息,请参阅:
- 教程:转换和保护 API
- 策略参考,其中提供了策略语句及其设置的完整列表
- 策略表达式
- 设置或编辑策略
- 重复使用策略配置
- 策略片段存储库
- Azure API 管理策略工具包
- 使用 Azure 中的 Microsoft Copilot 创作策略
其他资源
培训
认证
Microsoft Certified: Azure Cosmos DB Developer Specialty - Certifications
使用 Microsoft Azure Cosmos DB 在 SQL API 和 SDK 中编写高效的查询、创建索引策略、管理和预配资源。
文档
-
API 管理策略简介,这些策略通过配置更改 API 行为。 策略语句在 API 请求或响应上按顺序运行。
-
可用于 Azure API 管理的 set-header 策略参考。 提供策略用法、设置和示例。
-
了解 Azure API 管理中的策略表达式。 查看示例和其他可用资源。