Skip to content

الإعداد

ينقسم الإعداد إلى متغيرات بيئة الخادم (أسرار، حدود المعدل، الترجمة) وlocalStorage في المتصفح (المكدس، تفضيلات الواجهة، آخر فحص مخزّن).

بيئة الخادم

انسخ .env.example إلى .env. تقرأها dotenv في عملية Express فقط.

المتغير الافتراضي الوصف
PORT 3001 منفذ الاستماع HTTP
SCAN_DAYS 60 نافذة البحث في الخلاصات
API_SECRET سر مشترك اختياري؛ عند التعيين يتطلب X-Api-Key أو Bearer على /api/* ما عدا health
API_SECRET_PREVIOUS السر السابق أثناء التدوير (اختياري؛ SECRETS.md)
VITE_API_KEY مفتاح build-time للواجهة (نفس API_SECRET للأدوات أحادية المستأجر)
NVD_API_KEY مفتاح حد معدل NVD (GET /api/health?detailed=truefeeds.nvd)
GITHUB_TOKEN API مشورات GitHub — PAT كلاسيكي public_repo
OSV_TIMEOUT_MS 15000 مهلة OSV (ms)؛ retry عند 429/503
GITHUB_MAX_PAGES 3 عمق التحميل المسبق للمشورات
TRANSLATE_ENABLED true مفتاح رئيسي للترجمة
TRANSLATE_MAX_ITEMS 50 سقف الترجمة لكل فحص
TRANSLATE_BATCH_MAX 40 لكل طلب /api/translate
TRANSLATE_CONCURRENCY 3 عمال ترجمة متوازيون
MYMEMORY_EMAIL هوية MyMemory
LIBRETRANSLATE_URL LibreTranslate اختياري
OLLAMA_URL نقطة Ollama محلية
OLLAMA_MODEL llama3.2 نموذج Ollama
RATE_LIMIT_SCAN_PER_MIN 12 أقصى طلبات POST /scan لكل IP في الدقيقة
RATE_LIMIT_WATCH_PER_MIN 120 أقصى طلبات POST /watch لكل IP في الدقيقة
SCAN_TIMEOUT_MS إيقاف طلبات scan/watch الطويلة (راجع .env.example)

متغیرات ops إضافية

راجع فصل Configuration (EN)API_ROLE، DATABASE_URL، REDIS_URL، JOB_QUEUE_ENABLED، WORKER_CONCURRENCY، JOB_RESULT_TTL_SEC، AIRGAPPED، K8S_*، METRICS_*.

البيانات والذاكرة المؤقتة وتعدد المستأجرين

المتغير الافتراضي الوصف
DATABASE_URL PostgreSQL لتاريخ المسح والمستأجرين والمكدسات المحفوظة
DATA_DIR ./data مجلد بيانات الخادم (Docker: /app/data)
REDIS_URL ذاكرة استجابة مشتركة بين النسخ؛ يفعّل أيضاً مهام مسح BullMQ عند تشغيل worker
JOB_QUEUE_ENABLED مفعّل مع REDIS_URL اضبط false لاستخدام Redis للذاكرة المؤقتة فقط (بدون قائمة)
WORKER_CONCURRENCY 1 مهام مسح متوازية لكل عملية worker
JOB_RESULT_TTL_SEC 3600 TTL Redis لحمولات نتائج المهام المكتملة
CACHE_MAX_ENTRIES 2000 سقف الذاكرة المؤقتة في الذاكرة عندما Redis غير مضبوط

أرسل X-Tenant-Id على /api/v1/* عند استخدام Postgres — المستأجرون.

بيئة إشعارات الخادم

تنبيهات صادرة اختيارية عندما تجد المراقبة CVE جديدة (انظر التنبيهات). تبقى متغيرات webhook Slack القديمة مدعومة.

المتغير الوصف
ALERT_WEBHOOK_URL / ALERT_WEBHOOK_URL_FILE webhook متوافق مع Slack (legacy)
ALERT_MIN_SEVERITY الحد الأدنى للخطورة لـ webhook القديم
ALERT_WEBHOOK_FORMAT JSON بقالب slack أو generic
NOTIFICATION_MIN_SEVERITY الحد الأدنى العام للخطورة (افتراضي ALERT_MIN_SEVERITY أو HIGH)
NOTIFICATION_SLACK_MIN_SEVERITY تجاوز Slack فقط (يعود للعام)
NOTIFICATION_DISCORD_MIN_SEVERITY تجاوز Discord
NOTIFICATION_TEAMS_MIN_SEVERITY تجاوز Teams
NOTIFICATION_TELEGRAM_MIN_SEVERITY تجاوز Telegram
NOTIFICATION_EMAIL_MIN_SEVERITY تجاوز Email
NOTIFICATION_WEBHOOK_MIN_SEVERITY تجاوز webhook عام
NOTIFICATION_DEDUP_MS كبح منشورات مكررة لكل قناة (افتراضي 15 دقيقة)
NOTIFICATION_RATE_LIMIT_PER_HOUR الحد الأقصى العالمي للإرسال الناجح/ساعة/قناة (0 = غير محدود)
NOTIFICATION_SLACK_RATE_LIMIT_PER_HOUR حد Slack/ساعة (يعود للعام)
NOTIFICATION_DISCORD_RATE_LIMIT_PER_HOUR حد Discord/ساعة
NOTIFICATION_TEAMS_RATE_LIMIT_PER_HOUR حد Teams/ساعة
NOTIFICATION_TELEGRAM_RATE_LIMIT_PER_HOUR حد Telegram/ساعة
NOTIFICATION_EMAIL_RATE_LIMIT_PER_HOUR حد Email/ساعة
NOTIFICATION_WEBHOOK_RATE_LIMIT_PER_HOUR حد webhook/ساعة
NOTIFICATION_SLACK_WEBHOOK_URL webhook Slack مخصص
NOTIFICATION_DISCORD_WEBHOOK_URL URL webhook Discord
NOTIFICATION_TEAMS_WEBHOOK_URL Microsoft Teams Incoming Webhook (MessageCard)
NOTIFICATION_TELEGRAM_BOT_TOKEN رمز bot تيليجرام
NOTIFICATION_TELEGRAM_CHAT_ID معرّف محادثة تيليجرام
SIEM_WEBHOOK_URL / SIEM_FORMAT SIEM JSON/CEF webhook
OPA_URL / OPA_ENFORCE OPA sidecar + watch gate
JIRA_* / SERVICENOW_* ITSM CRITICAL+KEV tickets
NOTIFICATION_WEBHOOK_URL webhook JSON عام (غلاف متوافق مع Teams)
NOTIFICATION_SMTP_HOST مضيف SMTP للبريد
NOTIFICATION_SMTP_PORT منفذ SMTP (افتراضي 587)
NOTIFICATION_SMTP_USER / NOTIFICATION_SMTP_PASS مصادقة SMTP (اختياري)
NOTIFICATION_SMTP_FROM / NOTIFICATION_SMTP_TO مرسل ومستقبل البريد

localStorage على العميل

المفتاح الغرض
cve-radar:stack أسماء الأدوات المراقبة
cve-radar:settings تنبيهات، مراقبة، ترجمة، فواصل
cve-radar:setup-complete انتهاء معالج الإعداد الأول (v1.1.0+)
cve-radar:theme light / dark / system
cve-radar:locale رمز لغة الواجهة
cve-radar:font-scale مقياس نص 85–140
cve-radar:sidebar-collapsed وضع SubNav الضيق
cve-radar:last-scan vuln + ملخص مخزّن (scanCache.ts، مفتاح بالمكدس)
cve-radar:known-ids معرّفات CVE لإزالة التكرار في المراقبة
cve-radar:sources-updated-at طوابع زمن لكل مصدر
cve-radar:source-config تبديل المصادر المدمجة والخلاصات المخصصة

لا تلتزم .env بحقيقي رموز مميزة.

عناوين URL لاكتشاف API

عند تشغيل الخادم يمكن للمكاملين قراءة الحدود والعقود دون مسح الكود:

URL الغرض
GET /api/health الحيوية وأعلام البيئة
GET /api/capabilities حدود رقمية وأعلام ميزات
GET /api/sources كتالوج الخلاصات المدمجة
GET /api/openapi.json مستند OpenAPI 3.1

المكافئات المُصدَرة: /api/v1/health، إلخ. راجع مرجع API.

التالي: المعمارية