Token roles and scope
The token’s team is the data-access boundary. A read query can narrow the token’s team set;
it cannot widen it. A trace outside the token’s scope returns the same
404 as a missing
trace. An ingest token can also restrict writes to a service and deployment environment.
Token administration opens the server database directly. Run token commands on the server
host or where its storage is accessible. They open vexlo.db inside the selected data
directory and do not accept a separate -db-path option.
Issue a read token
Set the server’s data-directory path, then create a read token for teamdevelopment and
save its output:
token_id. Token creation displays the
secret once. token list returns metadata, not the secret, so retain the file or store the
credential before discarding that output.
Set the server’s base URL and verify the new token:
Restrict an ingest credential
An ingest token accepts a single team and optional service and environment restrictions. Set the server’s data-directory path before creating the token:checkout-service records with the staging
environment. A mismatched service or environment is rejected; omitting the environment is
also rejected for an environment-restricted token. The relay treats these responses as terminal
and advances past the affected batch. Use a separate queue and relay for each scoped credential
so it only forwards records within that credential’s scope. See
terminal rejection.
The relay supplies the environment through -environment or VEXLO_ENVIRONMENT; the SDK
supplies its service name.
For read access across teams, pass a comma-separated list to -team, such as
platform,operations. Read scope is selected by team; service and environment query filters
narrow the records returned by a request.
Inspect token metadata
List the token IDs and their metadata from the server’s data directory:Replace an active read credential
Issue a replacement before revoking the active credential. This example rotates the unpinneddevelopment credential used above. Before adapting it for another credential, inspect
token list and preserve the required team list. Set the server paths and the active token’s
value and ID:
Revoke a credential
Choose the token ID fromvexlo token list, then revoke that ID:
Transport security
Loopback addresses can use HTTP. A server listening on a non-loopback address requires a TLS certificate and key through-tls-cert / VEXLO_TLS_CERT_FILE and
-tls-key / VEXLO_TLS_KEY_FILE. The server validates the pair during configuration checks.
For example, this check requests a non-loopback address without configuring TLS:
https:// destination when forwarding to a TLS listener. -allow-insecure-http or
VEXLO_ALLOW_INSECURE_HTTP bypasses the corresponding transport check; it does not disable
bearer authentication.
Local access without authentication
-no-auth or VEXLO_NO_AUTH disables credential checks and forces the server listener to
127.0.0.1, preserving the configured port. Its rows and queries use the team from -team /
VEXLO_TEAM, defaulting to default. This mode cannot be combined with header trust.
For a proxy-authenticated deployment, -header-trust enables read access through
X-Vexlo-Team and X-Vexlo-Trust-Secret when Authorization is absent. It requires
-header-trust-secret / VEXLO_HEADER_TRUST_SECRET. Ingest requests still use ingest tokens.
See Configuration for the exact settings.