Storage Driver Selection
Storage backend to use. Valid values:
disk, git, blob, postgres, mysql, sqlite3.Disk Storage
Store policies in a local directory. Ideal for development and simple deployments.Path to the directory containing policy files.
Enable automatic policy reloading when files change.
File watching uses filesystem notifications for efficient change detection. On some systems, you may need to increase inotify limits.
Git Storage
Fetch policies from a Git repository with automatic updates.Git protocol to use:
https, ssh, or file.URL to the Git repository.
Branch to checkout.
Subdirectory within the repository where policies are stored.
Local directory to checkout the repository to. Defaults to system cache directory.
Interval to poll for repository updates. Set to
0 to disable polling.Timeout for Git operations (clone, fetch, pull).
HTTPS Authentication
Username for HTTPS authentication.
Password or personal access token for HTTPS authentication.
SSH Authentication
SSH user for authentication.
Path to the SSH private key file.
Password for the SSH private key (if encrypted).
File Protocol
Blob Storage (S3, GCS, Azure)
Fetch policies from cloud blob storage with automatic updates.Bucket URL. Format depends on provider:
- S3:
s3://bucket-name?region=us-east-1 - GCS:
gs://bucket-name - Azure:
azblob://container-name
Prefix (subdirectory) within the bucket to download policies from.
Local directory to download policies to. Defaults to system cache directory.
Interval to poll for bucket updates. Set to
0 to disable polling.Timeout for downloading from cloud storage.
Timeout for individual HTTP requests to cloud storage.
AWS S3
S3 authentication uses the default AWS credential chain (environment variables, IAM role, shared credentials file).
Google Cloud Storage
GCS authentication uses Application Default Credentials (ADC).
Azure Blob Storage
Azure authentication uses environment variables (
AZURE_STORAGE_ACCOUNT, AZURE_STORAGE_KEY) or managed identity.PostgreSQL Storage
Store policies in a PostgreSQL database.PostgreSQL connection URL. Format:
postgres://user:password@host:port/database?optionsSkip checking for required database schema on startup.
Connection Pool
Maximum lifetime of a connection.
Maximum time a connection can be idle.
Maximum number of open connections.
Maximum number of idle connections.
Connection Retry
Maximum number of connection attempts.
Initial wait time between retry attempts.
Maximum wait time between retry attempts.
MySQL Storage
Store policies in a MySQL/MariaDB database.MySQL data source name (DSN). Format:
user:password@tcp(host:port)/database?optionsSkip checking for required database schema on startup.
Connection Pool and Retry
Same options as PostgreSQL:connPool and connRetry.
TLS Configuration
Map of TLS configuration names to certificate paths.
Map of server public key names to file paths.
The
interpolateParams=true option is recommended for better performance and security.SQLite Storage
Store policies in an SQLite database file.SQLite data source name. Can be a file path or
:memory: for in-memory database.The
_fk=true parameter enables foreign key constraints, which is recommended.