Settings reference This page is the canonical list of Ampora settings, grouped by section. The Env var column shows the __-separated form for use in container environment files.
Database Key Env var Default Purpose Database:Provider Database__Provider Postgres Postgres or Sqlite. SQLite is dev-only. ConnectionStrings:Ampora ConnectionStrings__Ampora — Provider-specific connection string. AMPORA_AUTO_MIGRATE (env-only) 0 Apply EF migrations on startup. Set 1 for k8s deployments.
See Database & migrations .
ASP.NET Core / hosting Key Env var Default Purpose ASPNETCORE_ENVIRONMENT env-only Production Production / Staging / Development ASPNETCORE_HTTP_PORTS env-only 8080 HTTP listen port ASPNETCORE_FORWARDEDHEADERS_ENABLED env-only true Honour X-Forwarded-* from the reverse proxy Logging:LogLevel:Default Logging__LogLevel__Default Information Logging:LogLevel:Microsoft.AspNetCore Logging__LogLevel__Microsoft.AspNetCore Warning
OIDC authentication Key Env var Default Purpose Authentication:Oidc:Authority Authentication__Oidc__Authority — Issuer URL of your IdP Authentication:Oidc:ClientId Authentication__Oidc__ClientId — Application's client ID Authentication:Oidc:ClientSecret Authentication__Oidc__ClientSecret — Application's client secret Authentication:Oidc:RoleClaim Authentication__Oidc__RoleClaim ampora:role Claim that carries the Ampora role Authentication:Oidc:TenantClaim Authentication__Oidc__TenantClaim tenant Claim that carries the tenant discriminator
See OIDC authentication .
OpAMP Key Env var Default Purpose OpAmp:MaxMessageBytes OpAmp__MaxMessageBytes 10485760 Hard cap per OpAMP frame; agents above are disconnected OpAmp:HeartbeatWindowSeconds OpAmp__HeartbeatWindowSeconds 90 Time without a frame before "last seen" goes stale OpAmp:AllowedCapabilityFlags OpAmp__AllowedCapabilityFlags 15 Bitmask of capabilities Ampora honours (AcceptsRemoteConfig + ReportsEffectiveConfig + ReportsHealth + ReportsRemoteConfig = 15) OpAmp:RequireMtls OpAmp__RequireMtls true Reject non-mTLS connections after bootstrap OpAmp:BootstrapPlaintextAllowed OpAmp__BootstrapPlaintextAllowed false Allow bootstrap connections over plain WS (dev only)
See Reference → OpAMP capability matrix .
Encryption / key protection Key Env var Default Purpose KeyProtection:MasterKey KeyProtection__MasterKey — Base64 of a 32-byte CSPRNG key. Wraps every encryption-at-rest field. KeyProtection:PreviousMasterKey KeyProtection__PreviousMasterKey — Old master key during rotation. Drop after one cycle. CryptoProvider:Kind CryptoProvider__Kind Software Software / AwsKms / AzureKeyVault / GcpKms / Pkcs11 / VaultTransit CryptoProvider:KeyId CryptoProvider__KeyId — Provider-specific identifier for the signing key
See Security → HSM/KMS integration .
Certificate authority Key Env var Default Purpose CertificateAuthority:CommonName CertificateAuthority__CommonName Ampora CA Subject CN of the auto-bootstrapped CA CertificateAuthority:CrlDistributionPoint CertificateAuthority__CrlDistributionPoint — CRL DP URL embedded in every issued cert CertificateAuthority:OcspResponderUrl CertificateAuthority__OcspResponderUrl — OCSP responder URL embedded in every issued cert CertificateAuthority:DefaultLeafLifetimeDays CertificateAuthority__DefaultLeafLifetimeDays 365 Default validity for issued client certs CertificateAuthority:DefaultTrustedWindowDays CertificateAuthority__DefaultTrustedWindowDays 30 How long a previous active key stays trusted after rotation
See mTLS & PKI .
Multi-tenancy Key Env var Default Purpose MultiTenant:Mode MultiTenant__Mode SoftScoping SoftScoping (single-tenant or co-located) or HardIsolation (Postgres RLS) MultiTenant:DefaultTenant MultiTenant__DefaultTenant default Tenant assigned when the discriminator claim is missing
See Tutorials → Multi-tenant onboarding .
Dispatch backplane Key Env var Default Purpose Dispatch:Backplane Dispatch__Backplane InProcess InProcess / Postgres / Redis Dispatch:RedisConnectionString Dispatch__RedisConnectionString — Required when Backplane=Redis Dispatch:OwnershipTtlSeconds Dispatch__OwnershipTtlSeconds 60 How long a session-ownership lease lives without renewal Dispatch:LeaderLeaseSeconds Dispatch__LeaderLeaseSeconds 30 Background-job leader lease TTL
See Dispatch backplane .
Self-observability Key Env var Default Purpose OpenTelemetry:ServiceName OpenTelemetry__ServiceName ampora-server OTLP service name OpenTelemetry:OtlpEndpoint OpenTelemetry__OtlpEndpoint — OTLP gRPC endpoint; empty disables export OpenTelemetry:Headers OpenTelemetry__Headers — OTLP headers (e.g. for vendor auth) OpenTelemetry:SamplingRatio OpenTelemetry__SamplingRatio 0.05 Trace sampling ratio (0.0 – 1.0)
See Self-observability .
GitOps Key Env var Default Purpose GitOps:Enabled GitOps__Enabled false Master switch GitOps:CacheRoot GitOps__CacheRoot /var/lib/ampora/git-cache Where shallow clones land GitOps:DefaultPollIntervalSeconds GitOps__DefaultPollIntervalSeconds 60 Default poll cadence; per-source override
See Tutorials → GitOps .
Federation Key Env var Default Purpose Federation:Enabled Federation__Enabled false Master switch (both inbound and outbound) Federation:InboundCorsOrigins Federation__InboundCorsOrigins [] CORS origins for inbound federation traffic Federation:HttpClientTimeoutSeconds Federation__HttpClientTimeoutSeconds 15 Timeout on outbound peer requests
See Tutorials → Federation .
Audit retention Key Env var Default Purpose AuditRetention:HotDays AuditRetention__HotDays 90 Days events stay in the hot table AuditRetention:ArchiveDays AuditRetention__ArchiveDays 2555 Days events stay in the archive table (7 years) AuditRetention:SweepIntervalMinutes AuditRetention__SweepIntervalMinutes 60 How often the retention service runs
See Audit retention .
Debug knobs These are gated behind explicit settings — never enable them in production unless you know exactly why.
Key Env var Default Purpose Debug:AllowRolloutEndpoints Debug__AllowRolloutEndpoints false Exposes GET /debug/rollouts/{id}/start|pause|abort for end-to-end test scripts Debug:AllowAnonymousMetrics Debug__AllowAnonymousMetrics false Disables auth on /metrics (some Prom setups require this)