Skip to main content

Documentation Index

Fetch the complete documentation index at: https://certplane.kippel.org/llms.txt

Use this file to discover all available pages before exploring further.

The broker needs access to sensitive values such as DNS provider API tokens used to complete ACME dns-01 challenges. Rather than embedding these values directly in broker.yml, Certplane supports four pluggable secrets providers that you configure under the secrets section of the broker config. Each provider resolves a secret by name at runtime, keeping credentials out of your configuration files and version control.
The env provider is the default and the simplest way to get started. It requires no additional configuration beyond setting environment variables before you start the broker.
Do not store plain-text secrets in broker.yml itself. Use one of the secrets providers below so that sensitive values are kept outside your configuration files and are not accidentally committed to version control or included in configuration diffs.

Secret references

Wherever Certplane expects a sensitive value (such as a DNS provider credential), you supply a secret reference — a name that the active provider resolves at runtime. The meaning of the name depends on which provider is configured:
ProviderName means
envEnvironment variable name
fileAbsolute file path
vaultVault secret path
openbaoOpenBao secret path

Configuring a provider

Set secrets.provider in broker.yml to choose a provider. Only one provider is active at a time.
The env provider (default) resolves secret names as environment variable names. The broker reads the named variable from its process environment at the point the secret is needed.
secrets:
  provider: env
For example, if a DNS credential reference uses the name CLOUDFLARE_DNS_API_TOKEN, the broker reads the value of the $CLOUDFLARE_DNS_API_TOKEN environment variable. Set that variable before starting the broker:
export CLOUDFLARE_DNS_API_TOKEN=your-token-here
certplane-broker --config /etc/certplane/broker.yml
No additional fields under secrets are required for this provider.