匿名消费者
API7 企业版中的匿名消费者功能通过允许在身份验证插件上配置匿名消费者,实现了选择性地绕过身份验证要求。此功能允许受保护的路由向未通过身份验证的调用者授予访问权限。
考虑这样一个场景:一家公司希望提供某些免费增值 API 访问权限来演示产品,此外还有付费的高级产品。可以为匿名消费者分配比经过身份验证的用户更低的限流限速配额,有助于优先为高级用户分配资源,同时在必要时仍允许未经身份验证的访问。当匿名请求过多时,超过分配配额的请求将被拒绝,并且配额仅在下一个限流周期重置。相比之下,经过身份验证的高级用户将获得更高的配额,从而确保他们拥有优先访问权和更好的服务可靠性。

关键功能
- 通过消除公共或演示端点的身份验证步骤,增强非关键数据或试用功能的访问便利性。
- 确保经过身份验证的用户拥有更高的服务可用性。
- 支持多种身份验证方法,包括密钥认证、JWT、HMAC 和基本认证。
- 将包含匿名消 费者名称的
X-Consumer-Username标头转发到上游服务,这允许实施额外的业务逻辑。 - 通过鼓励将匿名消费者权限与完全经过身份验证的权限隔离来维护安全边界,从而降低暴露敏感数据或影响关键操作的风险。
用例
实施不同的限流限速配额
可以为匿名消费者分配不同于经过身份验证用户的特定限流限速策略。根据设计,匿名消费者通常具有更严格的配额来限制他们可以访问的数据量或请求数,从而有助于保护资源并保持服务质量。例如,一个 API 可能允许未经身份验证的用户每天发出最多 100 个请求,而经过身份验证的用户可能被允许发出数千个请求。这种区别保护了付费客户或已验证身份用户的核心资源,并有助于减轻未知实体的潜在滥用或过度使用。
为试用或免费增值模式启用公共访问
对于提供免费增值或基于试用的访问权限的企业,匿名消费者功能提供了一种简化的方法,允许访问有限的 API 功能集,而无需新用户注册或进行身份验证。此设置对于降低入职门槛和允许潜在客户探索功能特别有用。例 如,天气 API 可以允许匿名访问基本预报数据,同时为经过身份验证的用户保留高级数据(如历史趋势或高分辨率雷达图像)。如果用户需要更全面或不受限制的访问权限,这会鼓励他们升级。
简化演示或测试环境的入职流程
通过为演示环境或测试端点指定匿名消费者,组织可以允许开发人员访问示例 API,而无需创建完整帐户或验证身份。这有助于降低希望评估 API 集成可行性的第三方开发人员或客户的进入门槛。例如,电子商务平台可以在沙盒环境中通过匿名消费者访问提供示例产品和定价数据,使潜在合作伙伴能够轻松测试集成,而无需入职延迟或不必要的帐户设置步骤。