更新日志
3.9.8
发布日期:2026-04-07
不兼容变更
插件
-
Limit Count
升级说明limit-count插件中的sync_interval(Redis 延迟同步)功能已被移除,该功能现在仅在 Limit Count Advanced 插件中提供。如果你正在使用配置了sync_interval的limit-count插件,请在升级前将配置迁移至limit-count-advanced插件。
新功能
插件
- MCP Tools ACL(新插件)
- 新增用于 MCP 服务的工具级访问控制插件,适用于通过 OpenAPI-to-MCP 插件暴露的 MCP 服务。支持白名单(
allow_tools)和黑名单(deny_tools)模式,并可通过表达式匹配条件实现路由级或服务级工具访问策略。支持消费者和消费者组的优先级规则评估。SSE 响应会自动过滤tools/list结果中被拒绝的工具。
- 新增用于 MCP 服务的工具级访问控制插件,适用于通过 OpenAPI-to-MCP 插件暴露的 MCP 服务。支持白名单(
- AI Proxy
- 新增原生 Anthropic Messages API 支持。使用 Anthropic SDK 格式发送到
/v1/messages的请求现在可直接透传至 Anthropic 兼容后端,无需协议转换,保留 Anthropic 特有的字段(如缓存 token 用量)。 - 新增 OpenAI Responses API(
POST /v1/responses)完整支持。流式和非流式响应均可正确处理,所有下游插件(RAG、内容审核、Prompt Decorator、Prompt Guard、日志)均可与 Responses API 格式正常协作。
- 新增原生 Anthropic Messages API 支持。使用 Anthropic SDK 格式发送到
- AI Rate Limiting
- 新增
expression限速策略,支持通过cost_expr字段使用自定义 Lua 算术表达式动态计算 token 成本。例如,input_tokens + cache_creation_input_tokens可实现 Anthropic Claude 的缓存感知输入 token 每分钟(ITPM)限速。
- 新增
- OAS Validator
- 新增 OpenAPI 3.1 规范校验支持,包括
exclusiveMinimum/exclusiveMaximum数值格式、if/then/else条件 schema、["string", "null"]可空类型、const、patternProperties、prefixItems以及 JSON Schema$dynamicRef/$dynamicAnchor等特性。 - 新增可配置的
rejection_status_code选项(400–599,默认 400),可区分语义校验错误(如 422 Unprocessable Entity)和请求格式错误(400 Bad Request)。
- 新增 OpenAPI 3.1 规范校验支持,包括
- Request ID
- 新增
uuidv7算法选项。UUID v7 生成按时间排序、字典序可排序的唯一标识符,比随机 UUID v4 更适合分布式追踪和日志关联。
- 新增
- OpenAPI to MCP
- 新增 OpenAPI
in: header参数支持。OpenAPI 规范中定义的 Header 参数现在可正确包含在 MCP 工具 schema 中,并在调用上游 API 时作为 HTTP 请求头转发。
- 新增 OpenAPI
控制面
- 新增 Vault 动态角色数据库凭证轮换支持。动态角色会创建具有可配置租约 TTL 的临时数据库用户,相比静态角色安全性更高。动态角色现为默认模式,并支持指数退避自动重试启动。
- 新增独立的文件服务器组件,用于托管 MCP 服务器可访问的文件。文件可通过 Dashboard API 上传,通过专用端口提供服务。文件服务器默认关闭,可在系统设置中启用。
- 新增 HTTP Bridge 动态客户端注册(DCR)提供者类型。HTTP Bridge 通过可配置的 HTTP 端点将 DCR 操作(注册、更新、删除、轮换密钥)代理至外部身份提供者。
- 新增数据面兼容性报告功能。当控制面与数据面版本不一致时,数据面通过心跳上报不兼容资源详情(schema 校验失败、未知插件字段、缺失插件),兼容性状态可通过运行时实例 API 查看。
- 发布服务时 upstream 配置现在为可选项,支持 AI Proxy 等无需后端 upstream 的纯插件场景。
- 优化自定义插件同步机制,采用增量缓存刷新。定时同步任务现在仅查询变更部分而非全表扫描,显著降低数据库负载。
数据面
- 优化 Redis Sentinel 连接性能。Master 节点地址现通过可配置 TTL 的本地缓存进行缓存,减少每次新建连接时对 Sentinel 的查询往返。此外,连接池中复用的连接跳过重复的 AUTH 和 SELECT DB 命令,降低高吞吐 Redis 操作的延迟。
开发者门户
- 新增管理员身份模拟功能。门户管理员可模拟组织 Owner 身份进行问题排查,模拟会话有效期 1 小时,模拟期间显示持久性警告横幅。
- 新增 HTTP Bridge 凭证的 OAuth 客户端密钥重新生成功能。组织 Owner 可通过凭证管理界面中的确认弹窗重新生成密钥。
- 新增可配置的 TOTP 双因素认证(2FA),用于开发者门户登录。
- 新增基于角色的访问控制(RBAC),包含三种角色:Owner(完全控制,包括删除组织)、Admin(除删除组织外的所有权限)和 Member(仅查看权限)。
- 组织设置页面现使用 slug 前缀 URL。切换组织或重命名组织 slug 时,页面 URL 自动更新。
- 应用详情页现根据门户配置文件中的设置展示相关配置。
- 新增可选的注册提示 HTML 插槽,用于在认证页面的注册按钮前展示自定义可信内容。
缺陷修复
插件
- AI Aliyun Content Moderation
- 修复问题:空白内容导致阿里云审核 API 返回 400 错误。此外,LLM 错误响应(状态码 ≥ 400)在响应审核阶段触发 500 错误,多模态内容数组导致文本提取崩溃。
- AI Proxy
- 修复问题:当插件通过
ngx.exit()提前退出时,apisix_llm_active_connectionsPrometheus 指标永远不会递减,导致该指标持续增长并报告不准确的活跃连接数。
- 修复问题:当插件通过
- AI Rate Limiting、Limit Conn、Limit Req
- 修复问题:Redis 主机配置中的
$env://和$secret://引用被当作字面字符串传递,未能解析为实际值,导致 Redis 连接失败。
- 修复问题:Redis 主机配置中的
- 修复问题:多个插件和 Agent 日志输出中,API 密钥、认证令牌、OAuth 凭证和完整插件配置以明文形式记录。敏感数据现已脱敏处理。
控制面
- 修复问题:当服务未配置 upstream 时,通过 PATCH 更新服务运行时配置(如切换服务状态)会因 schema 校验错误而失败。
- 修复问题:HTTP 和 Stream 子系统中同名插件共享同一缓存条目,导致两个子系统同时启用时使用了错误的插件 schema 进行校验。
- 修复问题:删除订阅时未校验订阅是否属于目标 API 产品,可跨 API 产品删除订阅。
- 修复问题:未配置 upstream 的服务在 upstream 列表 API 中显示了虚假的空 upstream 记录。
- 修复问题:升级迁移过程中处理未配置 upstream 的服务时,控制面因空指针引用而崩溃。
- 修复问题:同一开发者门户内的多个 API 产品可关联相同的网关服务(相同服务 ID 和网关组),导致配置冲突。
- 修复问题:更新 SSL 证书时,新增域名与已有证书的 SNI 冲突未被检测到。
- 修复问题:删除与其他 API 产品共享网关服务的 API 产品时,错误地移除了共享服务上的所有系统插件,破坏了其他产品的认证配置。
- 修复问题:DCR 提供者的认证 Header(如 Bearer Token)在数据库中未加密存储。
- 修复问题:由于值/指针接收者不匹配,消费者凭证的密钥未在审计日志中脱敏。
- 修复问题:审批处理器(接受/拒绝订阅)在返回 403 状态后继续执行,绕过了权限检查并处理了请求。
- 修复问题:开发者门户只读用户可取消 API 产品订阅,因为该接口使用了读权限检查而非写权限检查。
- 修复问题:路由和 Stream 路由运行时配置的 PATCH 操作使用了只读/仅查看权限检查,允许无写入权限的用户修改配置。
- 修复问题:upstream 资源未校验是否属于请求的服务,允许跨服务访问 upstream。
- 修复问题:CAS SSLVerify 配置标志被反转,导致配置启用 TLS 证书校验时实际被禁用,可能使 CAS 认证连接遭受中间人攻击。
- 修复问题:ADC 发起的并发请求导致路由校验器因未同步访问延迟初始化的 schema 缓存 map 而崩溃(
concurrent map writes)。 - 修复问题:API 调用统计刷新在 IO 操作期间持有数据库锁,导致高流量下性能下降。刷新机制现使用交换释放和批量写入。
控制台(Dashboard)
- 修复问题:当服务名称为空或缺失时,Service Hub 页面和相关弹窗崩溃。
- 修复问题:将同一服务从不同网关组添加为关联服务时,被前端校验错误地阻止。
数据面
- 修复问题:DNS 解析间歇性返回错误的 IP 地 址。当网关在缓存模式下运行时,DNS Additional section 中的记录(域名服务器 glue 记录)被错误地包含在解析结果中,且其域名被覆写为查询域名。这导致随机的上游连接失败,因为网关偶尔会选中域名服务器的 IP 而非实际服务 IP。
开发者门户
- 修复问题:每个未认证请求都会生成 "No developer ID in session" 日志条目,导致生产日志被大量无效信息淹没,掩盖了真实错误。
- 修复问题:OIDC 提供者凭证的"重新生成密钥"选项显示为禁用状态而非隐藏。现在该选项仅对 HTTP Bridge 凭证可见。
- 修复问题:未注销直接重新登录后,Owner 角色未正确恢复,导致受角色限制的 UI 按钮显示为禁用状态,需手动刷新页面。
3.9.7
发布日期:2026-03-25
新功能
插件
- AI Proxy
- 新增 Anthropic 与 OpenAI 协议之间的双向透明转换。用户可以使用 Anthropic SDK 格式的请求访问 OpenAI 兼容的后端服务(如 DeepSeek、OpenRouter 等),网关自动完成请求和响应格式的转换,包括 SSE 流式传输。
- OpenAPI to MCP
- 新增 MCP Tool Annotations 支持。通过 OpenAPI 规范中的
x-mcp-annotations扩展字段,可为生成的 MCP 工具添加行为元数据标注(只读、破坏性、幂等等),帮助 AI Agent 更准确地理解和调用 API。
- 新增 MCP Tool Annotations 支持。通过 OpenAPI 规范中的
控制面
- Dashboard 新增 Limit Count 插件的图形化表单,支持 Local、Redis 和 Redis Cluster 三种策略的可视化配置,无需手动编辑 JSON/YAML。
- Dashboard 侧边栏新增自定义菜单分组功能,可通过 YAML 配置文件添加外部链接(如内部文档、Wiki 等)。
- 优化高频 API 调用场景下的数据库写入性能:通过写入防抖和内存缓存减少热路径操作(如 Token 使用时间戳、网关心跳时间戳等)的数据库写入频率,同时优化分布式锁获取延迟。
数据面
- Stream Proxy 的 TCP 和 UDP 监听器新增端口范围配置支持(如
2000-2100),大量代理端口场景下无需逐个列出端口号。
缺陷修复
插件
- AI Proxy
- 修复问题:当上游返回的 HTTP chunk 边界与 SSE 事件边界不对齐时,AI 请求的 token 用量统计(prompt_tokens、completion_tokens)可能不准确。
- Prometheus
- 修复问题:未启用 AI 插件的 API 路由在 Prometheus 监控中也产生
apisix_llm_*系列指标,导致不必要的指标基数和存储开销。同时新增disabled_labels对 LLM 指标的支持,允许按需关闭高基数标签。
- 修复问题:未启用 AI 插件的 API 路由在 Prometheus 监控中也产生
控制面
- 修复问题:多个并发 API 请求同时修改 Global Rule 时,仅最后一次写入的配置在网关中生效,尽管 Dashboard 显示所有修改均已成功。
- 修复问题:通过 ADC 同步包含非 HTTPS 主动健康检查的服务配置时,报错
Unrecognized key: "https_verify_certificate"导致同步失败。 - 修复 Dashboard 中新增 Kubernetes 网关实例时 workers 数量的默认值为 1。
数据面
- 修复问题:网关 worker 进程重启(如异常崩溃)后,API 调用次数统计出现偏差。
3.9.6
发布日期:2026-03-09
新功能
插件
- Error Log Collect
- 新增插件,支持错误日志的统一收集。
- Oas Validator
- 新增参数
reject_if_not_match。当设置为false时,即使请求未通过 OAS 验证,也允许其转发至上游服务。
- 新增参数
- Limit Count Advanced
- 新增更多日志信息,方便调试。
控制面
- 资源名称 API 支持已发布的服务和路由。
- 在告警策略中,告警条件新增对服务和路由的支持。
- 支持通过 Vault 实现 Postgres 凭证的动态轮换。
数据面
- 新增
rate-limiting-info变量,支持获取限流插件的详细状态信息。 - Docker 镜像加固:使用 distroless 作为基础镜像,并升级 busybox 以修复安全漏洞。
缺陷修复
插件
- Limit Count Advanced
- 修复问题:同步函数发生 panic 时导致共享字典锁无法释放,导致同步中断。
3.9.5
发布日期:2026-02-14
新功能
插件
- Feishu Auth
- 新增基于 OIDC Authorization Code 流程的飞书认证插件,支持在工作台集成内部业务。
- Dingtalk Auth
- 新增钉钉认证插件,认证过程记录关键日志,方便追踪认证过程。
控制面
-
每日许可证信息记录:控制面每天记录许可证的 CPU 限制、过期时间及当前核心数,并在到期前 3 个月开始提醒。用户可直接通过日志查看 CPU 用量。
-
OpenTelemetry 数据收集与查看:控制面可向数据面下发调试和采样任务,接收上报数据,支持通过 API 导出及前端界面可视化展示。
说明此功能引入了额外的组件 Jaeger。如果使用 Helm 部署,请注意控制平面的 values 文件默认会启用 Jaeger。官方 Helm Chart 仓库地址为:https://charts.api7.ai。
3.9.4
发布日期:2026-02-03
新功能
控制面
- 禁用 SCIM 后,允许在 API7 中删除从 IdP 同步过的 SCIM 历史用户。
- 上传 OpenAPI 文件现已支持 OpenAPI 3.1.0 和 3.1.1 版本。
缺陷修复
插件
- Limit Conn
- 修复问题:在网关意外崩溃时,计数器数据不准确。
数据面
- 修复问题:当配置多个控制平面地址时,心跳和指标上报时仅会使用第一个连接地址。
控制面
- 修复问题:在路由的 URL 未以
/开头时,冲突检测 API 会报500错误。 - 修复问题:插件配置代码编辑器中偶发代码提示失效。
3.9.3
发布日期:2026-01-26
新功能
插件
- AI Request Rewrite
- 新增对 Gemini、Vertex AI 提供商的支持。
- SAML Auth
- 新增
auth_protocol_binding_method配置项,支持配置 SAML 协议绑定方法,支持 HTTP-POST 和 HTTP-Redirect 两种方式,默认为 HTTP-Redirect(兼容之前版本)。注意,当 Azure AD 作为身份提供商时,必须使用 HTTP-POST。
- 新增
缺陷修复
插件
- SAML Auth
-
修复问题:无法在多个网关实例间共享 SAML 会话。新增必填字段
secret用于配置加密 session 数据的密钥。升级说明旧版本升级上来的
saml-auth插件可以正常工作,但无法在多个网关实例间共享会话,配置secret后即可解决该问题。 -
修复问题:执行登出请求时,SAML Request 中缺少
NameID字段。注意,当 Azure AD 作为身份提供商时,缺少NameID字段会导致登出失败。
-
3.9.2
发布日期:2026-01-19
新功能
插件
- AI Proxy/AI Proxy Multi
- 新增对 Gemini、Vertex AI、OpenRouter、Anthropic 四个提供商的支持。
- Basic Auth/JWT Auth/Key Auth/HMAC Auth/LDAP Auth
- 新增
realm配置项,用于在响应头WWW-Authenticate中设置 Realm 值。
- 新增
- OpenID Connect
- 支持通过配置
claim_schema对声明进行校验。
- 支持通过配置
控制面
- 禁止版本高于控制面的网关节点接入。
- 查询上游中节点健康检查状态的功能,现已支持多上游场景。
缺陷修复
插件
- Limit Count
- 修复问题:在多个消费者中配置了相同的限流配置时,限流计数器被共享(3.8.5 引入)。
- Limit Count Advanced
- 修复问题:重置请求头时出现数据错误(3.8.19 引入)。
- 修复问题:开启 Redis 延迟同步功能后,限流数据未正确提交(3.8.19 引入)。
- 修复问题:Redis Sentinel 模式下无法指定 Redis 密码。
- 修复问题:Redis Sentinel 模式下连接 Redis 未启用连接保活。
- Syslog
- 修复问题:在 UDP 模式下,发送一条超长日志后,后续日志发送阻塞。
- Request ID
- 修复问题:在客户端传递的
request-id为空字符串时,系统未自动生成新的 request ID。
- 修复问题:在客户端传递的
数据面
- 修复问题:启动过程可能出现
deepcopy table overflow错误。 - 修复问题:未启用
enable_server_tokens时,server header 返回 APISIX。 - 修复问题:在
ai-proxy-multi插件更新后,健康检查器导致网关持续输出错误日志。
控制面
- 修复问题:SSL 资源默认的
client.depth过小,导致 Cloud v2 用户 mTLS 功能迁移失败。 - 修复问题:并发调用 SSL API 时可能引发数据重复。
- 修复问题:控制台中前端组件的健康状态未反映在
/healthzAPI 返回值中。
3.9.1
发布日期:2026-01-08
缺陷修复
开发者门户
- 修复在旧版本开发者门户中创建的“开发者”无法被删除的问题。
3.9.0
发布日期:2026-01-06
新功能
- 所有 API7 企业版 Docker 镜像通过 Cosign 签名,提升镜像安全性。
开发者门户
- 全新设计的开发者门户。
- 提供开源 SDK 和前端脚手架项目,方便用户二次开发。
- 新增 Portal 级别认证机制用于对接 API。
- 移除门户内置的单点登录功能。
插件
-
- 支持使用 Redis 和 Redis Cluster 作为限流数据存储后端。
升级说明- 新增必填字段:
policy,已有配置无须修改,在数据面可以正常工作,但更新配置时需要补充该字段(policy=local),否则更新会被拒绝。
-
- 新增 KSUID 生成器选项。
-
- 支持自定义发送给 Loki 服务器的 HTTP 请求头。
-
File Logger
- 支持通过
match字段匹配并记录指定的请求。
- 支持通过
-
rules字段现已设置为必填项。
控制面
- 允许在启用 SSO 登录后,完全禁用内置的用户名密码登录方式。
- 支持配置数据库语句的最大执行时间。
- 可观测性优化
- 默认开启 pprof 性能分析功能。
- 监控指标端点新增数据库连接池监控指标。
- 支持分别记录访问日志和错误日志。
- 访问日志和错误日志中增加
request_id字段。
缺陷修复
插件
- OpenAPI to MCP
- 修复问题:使用 query 参数传递认证参数可能导致敏感信息泄露。