Environment Variables
Runtime settings are defined in keynetra/config/settings.py. .env.example provides baseline values.
This page summarizes runtime variables and gives a production-oriented example block.
Core Runtime
KEYNETRA_ENVIRONMENTKEYNETRA_DEBUGKEYNETRA_SERVICE_MODEKEYNETRA_SERVER_HOSTKEYNETRA_SERVER_PORTKEYNETRA_AUTO_SEED_SAMPLE_DATA
Purpose:
- environment mode, server bindings, routing mode, and local bootstrap behavior
Data Stores
KEYNETRA_DATABASE_URLKEYNETRA_REDIS_URL
Purpose:
- configure primary persistence (database) and optional distributed cache/event backend (Redis)
Authentication and Security
KEYNETRA_API_KEYSKEYNETRA_API_KEY_HASHESKEYNETRA_JWT_SECRETKEYNETRA_JWT_ALGORITHMKEYNETRA_ADMIN_USERNAMEKEYNETRA_ADMIN_PASSWORDKEYNETRA_ADMIN_TOKEN_EXPIRY_MINUTES
Purpose:
- configure API auth methods and admin login token behavior
CORS
KEYNETRA_CORS_ALLOW_ORIGINSKEYNETRA_CORS_ALLOW_ORIGIN_REGEXKEYNETRA_CORS_ALLOW_CREDENTIALSKEYNETRA_CORS_ALLOW_METHODSKEYNETRA_CORS_ALLOW_HEADERS
Purpose:
- browser-origin controls for web clients
Policy and Model Loading
KEYNETRA_POLICIES_JSONKEYNETRA_POLICY_PATHSKEYNETRA_MODEL_PATHS
Purpose:
- configure inline policies or load policies/models from file paths
Caching and Resilience
KEYNETRA_DECISION_CACHE_TTL_SECONDSKEYNETRA_SERVICE_TIMEOUT_SECONDSKEYNETRA_CRITICAL_RETRY_ATTEMPTSKEYNETRA_RESILIENCE_MODEKEYNETRA_RESILIENCE_FALLBACK_BEHAVIORKEYNETRA_POLICY_EVENTS_CHANNEL
Purpose:
- decision-cache tuning, service timeout/retry behavior, and policy event distribution
Rate Limiting
KEYNETRA_RATE_LIMIT_PER_MINUTEKEYNETRA_RATE_LIMIT_BURSTKEYNETRA_RATE_LIMIT_WINDOW_SECONDS
Purpose:
- configure API request throttling defaults
OTel and OIDC
KEYNETRA_OTEL_ENABLEDKEYNETRA_OIDC_JWKS_URLKEYNETRA_OIDC_AUDIENCEKEYNETRA_OIDC_ISSUER
Logging
KEYNETRA_LOG_FORMAT(jsonorrich)KEYNETRA_FORCE_COLOR(1/0)
Docker Startup Helpers
KEYNETRA_RUN_MIGRATIONSKEYNETRA_STARTUP_SCREENKEYNETRA_HOSTKEYNETRA_PORTKEYNETRA_UVICORN_WORKERS
Example .env
KEYNETRA_ENVIRONMENT=production
KEYNETRA_DATABASE_URL=postgresql+psycopg://keynetra:keynetra@postgres:5432/keynetra
KEYNETRA_REDIS_URL=redis://redis:6379/0
KEYNETRA_API_KEYS=devkey
KEYNETRA_JWT_SECRET=change-me
KEYNETRA_ADMIN_USERNAME=admin
KEYNETRA_ADMIN_PASSWORD=admin123
KEYNETRA_POLICY_PATHS=./docs/examples/assets/policies
KEYNETRA_MODEL_PATHS=./docs/examples/assets/auth-model.yaml
KEYNETRA_SERVICE_MODE=all
KEYNETRA_SERVER_HOST=0.0.0.0
KEYNETRA_SERVER_PORT=8000
KEYNETRA_LOG_FORMAT=rich
KEYNETRA_FORCE_COLOR=1