Configuration¶
La configuration se divise en variables d'environnement serveur (secrets, limites, traduction) et localStorage navigateur (pile, préférences UI, scan en cache).
Environnement serveur¶
Copiez .env.example vers .env. Les clés sont lues par dotenv sur le processus Express uniquement.
| Variable | Défaut | Description |
|---|---|---|
PORT |
3001 |
Port d'écoute HTTP |
SCAN_DAYS |
60 |
Fenêtre look-back des flux |
API_SECRET |
— | Secret partagé optionnel ; si défini, X-Api-Key ou Bearer sur /api/* sauf health |
VITE_API_KEY |
— | Clé build-time UI (même valeur que API_SECRET en single-tenant) |
NVD_API_KEY |
— | Clé limite NVD (GET /api/health?detailed=true → feeds.nvd) |
GITHUB_TOKEN |
— | GitHub advisory — PAT classique public_repo |
OSV_TIMEOUT_MS |
15000 |
Délai OSV (ms) ; retry sur 429/503 |
GITHUB_MAX_PAGES |
3 |
Profondeur prefetch advisory |
TRANSLATE_ENABLED |
true |
Interrupteur maître traduction |
TRANSLATE_MAX_ITEMS |
50 |
Plafond traduction par scan |
TRANSLATE_BATCH_MAX |
40 |
Par requête /api/translate |
TRANSLATE_CONCURRENCY |
3 |
Workers traduction parallèles |
MYMEMORY_EMAIL |
— | Identité MyMemory |
LIBRETRANSLATE_URL |
— | LibreTranslate optionnel |
OLLAMA_URL |
— | Endpoint Ollama local |
OLLAMA_MODEL |
llama3.2 |
Modèle Ollama |
RATE_LIMIT_SCAN_PER_MIN |
12 |
Max requêtes POST /scan par IP et minute |
RATE_LIMIT_WATCH_PER_MIN |
120 |
Max requêtes POST /watch par IP et minute |
SCAN_TIMEOUT_MS |
— | Abandon des requêtes scan/veille longues (voir .env.example) |
Variables ops supplémentaires¶
Voir Configuration (EN) — API_ROLE, DATABASE_URL, REDIS_URL, AIRGAPPED, K8S_*, METRICS_*.
Environnement de notification serveur¶
Alertes sortantes optionnelles lorsque la veille détecte de nouveaux CVE (voir Alertes). Les variables webhook Slack legacy restent prises en charge.
| Variable | Description |
|---|---|
ALERT_WEBHOOK_URL / ALERT_WEBHOOK_URL_FILE |
Webhook compatible Slack (legacy) |
ALERT_MIN_SEVERITY |
Sévérité minimale pour webhook legacy |
ALERT_WEBHOOK_FORMAT |
JSON slack ou generic |
NOTIFICATION_MIN_SEVERITY |
Sévérité min globale (défaut ALERT_MIN_SEVERITY ou HIGH) |
NOTIFICATION_DEDUP_MS |
Suppression des posts dupliqués par canal (défaut 15 min) |
NOTIFICATION_SLACK_WEBHOOK_URL |
Webhook Slack dédié |
NOTIFICATION_DISCORD_WEBHOOK_URL |
URL webhook Discord |
NOTIFICATION_TELEGRAM_BOT_TOKEN |
Token bot Telegram |
NOTIFICATION_TELEGRAM_CHAT_ID |
Chat id Telegram |
NOTIFICATION_WEBHOOK_URL |
Webhook JSON générique (enveloppe compatible Teams) |
NOTIFICATION_SMTP_HOST |
Hôte SMTP pour alertes email |
NOTIFICATION_SMTP_PORT |
Port SMTP (défaut 587) |
NOTIFICATION_SMTP_USER / NOTIFICATION_SMTP_PASS |
Auth SMTP (optionnel) |
NOTIFICATION_SMTP_FROM / NOTIFICATION_SMTP_TO |
Expéditeur et destinataire email |
localStorage client¶
| Clé | Rôle |
|---|---|
cve-radar:stack |
Noms d'outils surveillés |
cve-radar:settings |
Alertes, veille, traduction, intervalles |
cve-radar:setup-complete |
Assistant initial terminé (v1.1.0+) |
cve-radar:theme |
light / dark / system |
cve-radar:locale |
Code langue UI |
cve-radar:font-scale |
Échelle texte 85–140 |
cve-radar:sidebar-collapsed |
Mode SubNav étroit |
cve-radar:last-scan |
vuln + summary en cache (scanCache.ts, clé pile) |
cve-radar:known-ids |
IDs CVE pour dédup veille |
cve-radar:sources-updated-at |
Horodatages par source |
cve-radar:source-config |
Bascules sources intégrées et flux custom |
Ne commitez jamais .env avec de vrais tokens.
URLs de découverte API¶
Serveur actif : les intégrateurs lisent limites et contrats sans parcourir le code :
| URL | Rôle |
|---|---|
GET /api/health |
Liveness et flags env |
GET /api/capabilities |
Limites numériques et feature flags |
GET /api/sources |
Catalogue de flux intégrés |
GET /api/openapi.json |
Document OpenAPI 3.1 |
Équivalents versionnés : /api/v1/health, etc. Voir Référence API.
Suite : Architecture