- 文档首页
API 网关
用户指南
插件中心
认证鉴权
API Key 认证鉴权
API Key 认证鉴权
API 网关通过 Key Auth 插件提供基于 API Key 的认证鉴权能力。本文介绍如何创建并配置 Key Auth 插件,对 API 请求进行身份校验。
背景信息
API Key 是一种简单且被广泛使用的用户认证机制,广泛应用于 API 接口的访问控制场景。其核心原理是客户端在请求头或者请求参数中添加唯一的 API Key,服务端或者代理获取 API Key 之后查询是否存在对应的消费者身份,来判断请求是否被授权。API Key 认证的具体流程如下所示。
- 管理员在 API 网关中创建消费者,并为其生成 API Key。
- 管理员在目标服务或路由上创建 Key Auth 插件,并指定允许通过认证的消费者。
- 客户端发起请求时,在请求头或请求参数中携带 API Key。
- API 网关收到请求后,提取 API Key 并校验其合法性。
- 校验通过则将请求转发至后端 Upstream;校验失败则返回认证错误响应。
- 已将网关实例升级至 3.1.0 及以上版本,详情请参见 版本管理。
- 已创建消费者,并生成或上传 API Key 信息。详情请参见 生成认证信息。
使用限制
- 同一插件在不同级别的资源上绑定时,只匹配生效优先级最高的资源,生效优先级由高到低:路由 > 服务。
- 例如,服务 Ⅰ 具有两条路由:路由 A 和路由 B,将插件配置在服务 Ⅰ 和路由 A 上,此时路由 A 的生效规则遵循路由 A 的插件配置,路由 B 的生效规则遵循服务 Ⅰ 的插件配置。
操作步骤
- 在左侧导航栏 实例管理 下拉框中选择目标实例后,单击 插件中心 > 认证鉴权 > Key Auth 插件。
-
配置完成后,在插件列表中,选择 服务级别 或 路由级别 页签,查看已配置的 Key Auth 插件,若插件状态为 已启用,表示插件已生效,只有携带 API Key 认证信息的请求能够正常访问 API 网关的后端 Upstream。
在 API 网关实例中配置 Key Auth 插件,并使用消费者生成 API Key 认证信息后。仅携带该认证信息的访问请求,能够通过 API 网关访问到后端 Upstream。
- 使用 API 网关实例中配置的域名访问服务,当未携带 API Key 认证信息时。
预期结果如下,表示认证失败,无法通过 API 网关访问到后端的服务。
- 使用 API 网关实例中配置的域名访问服务,当携带 API Key 认证信息时。
预期结果如下,表示能够通过 API 网关访问到后端的服务。
最近更新时间:2026.08.10 17:59:43