云原生API网关通过消费者来为路由、API开启认证能力,本文介绍云原生API网关控制台如何管理消费者。
创建消费者
云原生API网关为您提供了三种认证方式。
配置方式 | 说明 | 场景适用 |
API Key | 客户端需将凭证按指定方式添加到请求中,网关验证其合法性与权限。适用于非敏感操作场景,安全性低于 JWT、AK/SK,需注意凭证管理与保护。 | 适合轻量级、快速接入以及对安全性要求不特别高的场景。 |
JWT | JSON Web Token (JWT) 是一种在客户端与服务端之间安全传输信息的标准,通过 HMAC、RSA 或 ECDSA 签名确保信息可验证和可信。JWT 认证可在网关中实现身份验证与访问控制。 | 适用于分布式系统和单点登录(SSO)场景。 |
HMAC | 基于 HMAC 算法的 AK/SK 签名认证方式要求客户端在调用 API 时,使用签名密钥对请求内容进行签名计算,并将签名一同发送至服务端验证 。 | 适合对数据完整性和防篡改有较高要求的场景。 |
基于API Key认证方式创建
前往云原生API网关控制台的消费者页面,选择您计划创建消费者的地域。
单击创建消费者,在创建消费者面板,配置消费者名称,认证方式选择API Key,完成相关配置:
生成方式:
系统生成:系统为您自动生成API Key凭证。
自定义:自定义API Key凭证及凭证来源。
凭证(选择系统生成不同配置凭证):自定义API Key凭证。
凭证来源:
告诉网关API Key在请求中应该从哪里提取,来源包括:
Authorization: Bearer <token>(标准 Token 格式)
自定义 HTTP Header(如
X-API-Key: your-key
)自定义Query参数(如
?apikey=your-key
)
基于JWT认证方式创建
前往云原生API网关控制台的消费者页面,选择您计划创建消费者的地域。
单击创建消费者,在创建消费者面板,配置消费者名称,认证方式选择JWT,完成相关配置:
创建方式:
本地配置适用于认证服务与网关在同一集群或局域网内、对性能要求较高、密钥较少变动的场景。
远程获取适用于使用统一身份中心(如 OAuth2、OpenID Connect)签发JWT的场景,支持动态更新密钥,适合多租户或生产环境。
密钥类型(选择远程获取时,不用配置密钥类型):
对称密钥:生成一份默认的JWKS配置(每个消费者不同),包含加密或者解密Token时使用的密钥。
非对称密钥:需要您自己填写完整的JWKS配置,使用私钥加密Token。网关根据JWKS中配置的公钥进行解密。
JWKS:
选择本地配置时,设置JWKS配置,JWKS规范说明请参考JSON Web Key (JWK)。
选择远程获取时,设置URL,系统会自动解析并读取其中的信息,包括端口号、超时时间和缓存时间。
重要URL必须是域名,不能是IP。
JWT Token:设置JWT Token配置信息。
类型:Token参数类型,默认Header。
Key:Token参数名称。
前缀:Token参数名的前缀。设置需要校验的Token参数信息,默认是以Bearer为前缀放在Authorization Header中,例如Authorization: Bearer token。
是否透传:选中Token参数透传,表示透传此Token参数到后端服务。
JWT Payload 内消费者标识:指定从JWT Payload中的Key以及对应Value来识别为当前消费者。默认提供一对标识,Key为uid,Value为随机字符串,可以自行修改。JWT Token中的Payload配置示例如下所示:
{ "uid": "11215ac069234abcb8944232b79ae711" }
基于HMAC认证方式创建
前往云原生API网关控制台的消费者页面,选择您计划创建消费者的地域。
单击创建消费者,在创建消费者面板,配置消费者名称,认证方式选择HMAC,完成相关配置:
系统生成:系统为您自动生成AK、SK配置。
自定义:自定义AK、SK配置。
停用消费者
登录云原生API网关控制台。
在左侧导航栏,选择消费者,并在顶部菜单栏选择地域。
在消费者列表页面,单击目标消费者的操作列下的停用,然后在确认停用对话框中单击确定。
删除消费者
登录云原生API网关控制台。
在左侧导航栏,选择消费者,并在顶部菜单栏选择地域。
在消费者列表页面,单击目标消费者的操作列下的删除,然后在确认删除对话框中输入当前的消费者名称,然后单击删除。