- 文档首页
API 网关
用户指南
插件中心
认证鉴权
外部认证鉴权
外部认证鉴权
API 网关支持对接用户外部自建的认证鉴权服务,方便用户统一认证鉴权方式。本文介绍如何在 API 网关中配置外部认证鉴权。
部署在云端的业务通常根据客户端请求携带的凭证信息(即 Token)来保护对外暴露接口的通信安全。当 Token 形式为用户自定义格式时,则业务的服务端收到请求后,必须额外访问的鉴权服务来完成鉴权操作,以保证客户端访问的合法性。为满足此场景,API 网关支持基于用户自建认证鉴权服务的认证。具体的认证流程如下所示。
- 网关将认证请求直接转发给自建认证服务。认证服务支持搭建在容器服务集群、ECS 实例、函数服务中,或指定固定的 IP 地址。
- 认证服务读取请求中的验证信息进行验证,验证通过后返回凭证信息(Token)给网关,由网关返回给客户端。
- 客户端向网关发起业务请求,请求中携带上一步中身份认证成功后颁发的 Token。
- 网关通过截取原始业务请求的 Path(包含 Query Parameters)、HTTP 方法(GET、POST 等)和 Token 来形成一个新的请求报文,向接入的自建鉴权服务发起鉴权请求。您可以在 API 网关控制台中配置认证 Token 的 HTTP Header 位置(Authorization、Cookie 或自定义),也可以根据需要指定鉴权携带的请求头和鉴权返回的响应头。
- 认证服务收到鉴权请求后,根据 Token 完成合法性校验,并返回2xx或异常状态码。
- 如果认证服务返回的 HTTP 状态码为2xx,则表明 Token 合法且 Token 有权限访问指定的后端资源。网关继续将原始业务请求转发给受保护的后端服务,收到业务响应后再次转发给客户端,完成受保护的业务访问。
- 如果认证服务返回的 HTTP 状态码为其他异常状态码,则表明 Token 不合法或 Token 无权限访问指定的后端资源。网关直接返回鉴权服务的响应给客户端,业务访问失败。
- 已自建认证鉴权服务器,并在 API 网关中将认证服务器配置为 Upstream。详情请参见 Upstream 管理。
- 自建认证鉴权服务所在的云资源(例如 VKE 集群、ECS 实例等),必须与 API 网关实例在相同私有网络。
- 在左侧导航栏 实例管理 下拉框中选择目标实例后,单击 插件中心 > 认证鉴权 > 外部认证插件。
-
配置完成后,在外部认证插件列表将生成一条新的插件记录。插件状态为 已启用,表示插件功能生效。
在 API 网关实例中配置外部认证插件,当访问请求命中配置的域名和路径时,仅携带该认证信息的访问请求,能够通过 API 网关访问到后端 Upstream。
- 使用 API 网关实例中配置的域名访问服务,当未携带认证信息时。
- 预期结果如下,表示认证失败,无法通过 API 网关访问到后端的服务。
- 使用 API 网关实例中配置的域名访问服务,当携带认证信息时。
- 预期结果如下,表示能够通过 API 网关访问到后端的服务。
最近更新时间:2026.08.10 17:59:43