Files
Jens 67be350283
deploy / deploy (push) Canceled after 0s
Harden live mail OAuth and immutable releases
2026-07-30 02:00:09 +02:00

102 lines
3.4 KiB
Bash

# Kopieer naar .env en wijzig ALLE waarden met CHANGE_ME.
DJANGO_SECRET_KEY=CHANGE_ME_generate_a_long_random_value
DJANGO_DEBUG=1
# Leeg voor lokaal gebruik. In productie: https://vacatureradar.example.be
PUBLIC_BASE_URL=
DJANGO_ALLOWED_HOSTS=localhost,127.0.0.1
DJANGO_CSRF_TRUSTED_ORIGINS=http://localhost:1226
DJANGO_TIME_ZONE=Europe/Brussels
VACATURERADAR_OWNER_NAME=Jens
VACATURERADAR_VERSION=0.3.14
# Gebruik DATABASE_URL niet voor SQLite. Laat leeg voor lokale sqlite-ontwikkeling.
POSTGRES_DB=vacatureradar
POSTGRES_USER=vacatureradar
POSTGRES_PASSWORD=CHANGE_ME_same_password_as_DATABASE_URL
POSTGRES_HOST=postgres
POSTGRES_PORT=5432
DATABASE_URL=
REDIS_URL=redis://redis:6379/0
# Gedeelde cache voor rate limiting en readiness; gebruik een afzonderlijke Redis-database.
CACHE_URL=redis://redis:6379/1
HEALTHCHECK_REQUIRE_CACHE=1
CELERY_TASK_ALWAYS_EAGER=0
# Bootstrap-account; alleen gebruikt door `bootstrap_instance` wanneer nog geen gebruiker bestaat.
VACATURERADAR_ADMIN_USERNAME=admin
VACATURERADAR_ADMIN_EMAIL=
VACATURERADAR_ADMIN_PASSWORD=CHANGE_ME_use_a_unique_password
# Mailuitvoer. Console is veilig voor lokaal testen.
EMAIL_BACKEND=django.core.mail.backends.console.EmailBackend
DEFAULT_FROM_EMAIL=VacatureRadar <vacatureradar@localhost>
DIGEST_RECIPIENT=
SMTP_HOST=
SMTP_PORT=587
SMTP_USER=
SMTP_PASSWORD=
SMTP_USE_TLS=1
M365_TENANT_ID=
M365_CLIENT_ID=
M365_CLIENT_SECRET=
M365_MAILBOX_USER=
# Roteerbare Fernet-sleutels voor app-wachtwoorden; actieve sleutel eerst.
# Genereer met: python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"
MAILBOX_CREDENTIAL_KEYS=
IMAP_CONNECT_TIMEOUT_SECONDS=15
IMAP_MAX_MESSAGES_PER_POLL=200
IMAP_MAX_MESSAGE_BYTES=1000000
# Fetcher
FETCHER_USER_AGENT=VacatureRadar/0.1 (+local-personal-use; contact=local-admin)
FETCHER_TIMEOUT_SECONDS=20
FETCHER_MAX_BYTES=3000000
FETCHER_MAX_REDIRECTS=5
FETCHER_ALLOW_NONSTANDARD_PORTS=0
SOURCE_POLICY_MODE=strict
# Optionele lokale AI. De kern blijft werken met OLLAMA_ENABLED=0.
OLLAMA_ENABLED=0
OLLAMA_BASE_URL=http://ollama:11434
OLLAMA_MODEL=
OLLAMA_TIMEOUT_SECONDS=60
# Microsoft Entra ID (Azure AD) SSO. Laat ENTRA_ID_ENABLED=0 om SSO uit te zetten.
# Registreer een app in Entra ID en zet de redirect-URI op <host>/auth/entra/callback/.
ENTRA_ID_ENABLED=0
ENTRA_CLIENT_ID=
ENTRA_CLIENT_SECRET=CHANGE_ME_entra_client_secret
ENTRA_TENANT_ID=
# Optioneel: overschrijf de redirect-URI (anders automatisch afgeleid van de host).
ENTRA_REDIRECT_URI=
# Optioneel: beperk tot bepaalde e-maildomeinen, komma-gescheiden (bv. organisatie.nl).
ENTRA_ALLOWED_DOMAINS=
ENTRA_SCOPES=User.Read
# Demo-toegang: knop "Bekijk demo" logt in als afgeschermd gastaccount met een
# fictieve, gevulde demo-omgeving. Zet op 0 om de knop te verbergen.
DEMO_MODE_ENABLED=1
DEMO_READ_ONLY=1
DEMO_SESSION_SECONDS=3600
DEMO_USERNAME=demo
DEMO_EMAIL=demo@vacatureradar.local
# Beveiliging
# Zet TRUST_PROXY_HEADERS alleen aan achter een beheerde proxy die Host en X-Forwarded-Proto overschrijft.
TRUST_PROXY_HEADERS=0
USE_X_FORWARDED_HOST=0
# Alleen nodig wanneer client-IPheaders voor rate limiting worden vertrouwd.
TRUSTED_PROXY_CIDRS=
SESSION_COOKIE_SECURE=0
CSRF_COOKIE_SECURE=0
SECURE_SSL_REDIRECT=0
SECURE_HSTS_SECONDS=0
SEARCH_ENGINE_INDEXING_ENABLED=0
AUTH_LOGIN_RATE_LIMIT_MAX_ATTEMPTS=8
AUTH_LOGIN_RATE_LIMIT_WINDOW_SECONDS=300
AUTH_LOGIN_RATE_LIMIT_BLOCK_SECONDS=300
MANUAL_IMPORT_RATE_LIMIT_MAX_ATTEMPTS=12
MANUAL_IMPORT_RATE_LIMIT_WINDOW_SECONDS=120
MANUAL_IMPORT_RATE_LIMIT_BLOCK_SECONDS=300