凭证
本文档将介绍 APISIX 中凭证(Credentials)的基本概念,以及它如何与消费者配合用于多种身份认证插件。
在文档末尾探索其他资源,以获取有关相关主题的更多信息。
概述
在 APISIX 中,凭证(Credential)对象用于存储与消费者关联的身份认证插件配置。每个凭证最多启用一个身份认证插件,例如 key-auth、basic-auth、jwt-auth 或 hmac-auth。
一个消费者可以拥有不同身份认证插件的凭证。当多个凭证的标识值不同时,同一消费者也可以拥有同一个身份认证插件的多个凭证。例如,消费者可以通过创建第二个 key-auth 凭证、将客户端切换到新密钥,然后删除旧凭证来轮换密钥。凭证详细信息会单独存储,获取消费者对象时不会包含这些信息。
下图说明了凭证的示例,使用两个启用了不同类型身份认证的路由,以及一个消费者,其身份认证详细信息配置在凭证中。只有拥有有效凭证的请求才会被验证并允许访问上游资源:
请注意,当消费者成功通过身份认证时,APISIX 会在将请求代理到上游服务之前向请求添加额外的标头,例如消费者用户名和标识符。上游服务将能够区分消费者并根据需要实施其他逻辑。
其他资源
- 核心概念 - 消费者
- 快速入门 - 密钥认证
- Admin API - Credentials