Key Auth Configuration
Parameters
See plugin common configurations for configuration options available to all plugins.
Credentials
The following are plugin attributes available for configurations on credentials.
-
key—string· requiredA unique key that identifies the credential for a consumer. The key is encrypted with AES before being stored in etcd. You can also store it in an environment variable and reference it using the
env://prefix, or in a secret manager such as HashiCorp Vault's KV secrets engine, and reference it using thesecret://prefix. For more information, see secrets.
Routes or Services
The following are plugin attributes available for configurations on routes or services.
-
header—string· optional · default:apikeyThe header to get the key from.
-
query—string· optional · default:apikeyThe query string to get the key from. Lower priority than header.
-
hide_credentials—boolean· optional · default:falseIf true, remove the configured credential header and query parameter before forwarding upstream. Before falling back to
anonymous_consumer, the gateway also removes invalid credentials. Invalid-credential removal was introduced in API7 Enterprise 3.9.14 and 3.10.1, and in APISIX 3.17.0. -
anonymous_consumer—string· optionalAnonymous consumer name. If configured, allow anonymous users to bypass the authentication. See Rate Limit with Anonymous Consumer for more details.
-
realm—string· optional · default:keyRealm in the
WWW-Authenticateresponse header returned with a401 Unauthorizedresponse due to authentication failure. For example:-
If
realmis set tokey-auth, the 401 response will include the following header:WWW-Authenticate: apikey realm="key-auth" -
If
realmis not configured, the 401 response will include the following header:WWW-Authenticate: apikey realm="key"
This parameter is available in API7 Enterprise version 3.9.2 and later, and in Apache APISIX version 3.15.0 and later.
-