跳到主要内容
版本:3.10.x

匿名消费者

API7 网关中的匿名消费者功能允许在身份验证插件上配置匿名消费者,从而选择性绕过身份验证要求。此功能允许受保护的路由向未经身份验证的呼叫者授予访问权限。

考虑这样一种情况:除了付费的高级产品之外,公司还希望提供某些免费增值 API 访问权限来演示产品。可以为匿名消费者分配比经过身份验证的用户更低的限流配额,有助于为高级用户确定资源的优先级,同时在必要时仍然允许未经身份验证的访问。当匿名请求过多时,超出分配配额的请求将被拒绝,配额只会在下一个限流周期重置。相比之下,经过身份验证的高级用户可以获得更高的配额,确保他们拥有优先访问权和更好的服务可靠性。

具有不同限流配额的匿名免费增值消费者和高级消费者的图表

主要特点

  • 通过消除公共或演示端点的身份验证步骤,增强非关键数据或试用功能的访问便利性。
  • 确保经过身份验证的用户具有更高的服务可用性。
  • 支持多种认证方式,包括密钥认证、JWT、HMAC、基本认证。
  • 将包含匿名消费者名称的 X-Consumer-Username 标头转发到上游服务,这允许实现其他业务逻辑。
  • 通过鼓励将匿名消费者权限与经过完全身份验证的权限隔离来维护安全边界,从而降低暴露敏感数据或影响关键操作的风险。

用例

实施不同的限流配额

可以为匿名消费者分配与经过身份验证的用户不同的特定限流策略。根据设计,匿名消费者通常具有更严格的配额来限制他们可以访问的数据或请求量,从而有助于保护资源并维持服务质量。例如,API 可能允许未经身份验证的用户每天发出最多 100 个请求,而经过身份验证的用户每天可能会发出数千个请求。这种区别可以保护付费客户或具有经过验证的身份的用户的核心资源,并有助于减少未知实体的潜在滥用或过度使用。

启用试用或免费增值模式的公共访问

对于提供免费增值或基于试用的访问的企业,匿名消费者功能提供了一种简化的方式,允许访问一组有限的 API 功能,而无需新用户注册或身份验证。此设置对于降低入职摩擦并让潜在客户能够探索功能特别有用。例如,天气 API 可以允许匿名访问基本预报数据,同时为经过身份验证的用户保留高级数据,例如历史趋势或高分辨率雷达图像。如果用户需要更全面或不受限制的访问,这会鼓励他们升级。

简化演示或测试环境的入门

通过指定匿名消费者用于演示环境或测试端点,组织可以允许开发人员访问示例 API,而无需创建完整账户或验证身份。这有助于降低想要评估 API 集成可行性的第三方开发人员或客户的进入壁垒。例如,电子商务平台可能会在沙盒环境中通过匿名消费者访问提供示例产品和定价数据,使潜在合作伙伴可以轻松测试集成,而不会出现启动延迟或不必要的账户设置步骤。