Expand description
Consumer identities and credentials.
The featherbit analogue of APISIX’s consumer concept: named API clients
declared in gateway.yaml (or via the Admin API), each carrying
per-auth-plugin credentials. Auth plugins configured with
use_consumers: true resolve the presented credential against the
ConsumerStore and, on a match, attach the consumer’s identity to the
request via attach_consumer so downstream nodes (consumer-restriction,
loggers, rate limits keyed on $consumer_name) can act on it.
The store is immutable once built; reloads build a fresh store and swap
it atomically (ArcSwap in PluginResources), so lookups on the request
path are lock-free.
Structs§
- Consumer
- A resolved consumer, shared read-only across requests.
- Consumer
Config - A consumer as declared in
gateway.yamlunderconsumers:. - Consumer
Store - Lock-free lookup structure over the declared consumers.
Functions§
- attach_
consumer - Attaches a matched consumer’s identity to the request.
- primary_
credential_ 🔒field - The credential field indexed per auth type.