Security14 April 20265 min readالعربية

توقَّف عن إرسال ملفات .env بالبريد: دليل عملي للخزائن المُشفَّرة

كل فريق صغير لديه قصة عن كيف انتهى الحال بأسراره في مكان لا يجب أن تكون فيه. نادراً ما يكون الأمر خبيثاً — إنه مهندس أقدم يُدخِل مهندساً جديداً في الساعة 5 مساءً يوم جمعة، يلصق DATABASE_URL للإنتاج في رسالة مباشرة 'فقط لهذه المرة'. 'فقط لهذه المرة' تصبح 'مفهرَساً للأبد بواسطة Slack'.

SecurityUptime MonitoringWebsite MonitoringApi MonitoringCron Job Monitoring
Security

DATABASE_URL فريقك في رسائل Slack الخاصة لشخص ما. STRIPE_SECRET_KEY لديك يعيش في صفحة Notion. هكذا تتسرَّب الأسرار. هذه هي النظافة التي كان يجب أن تمتلكها من اليوم الأول — وكيف تجعلها الخزائن المُشفَّرة غير مؤلمة.

كيف تتسرَّب الأسرار في الفرق الصغيرة

أكثر أربع طرق تسرُّب شيوعاً:

رسائل Slack الخاصة — الإعداد، التسليمات السريعة. مُفهرَس البحث يحتفظ بها للأبد. • صفحات Notion/Confluence — صنع أحدهم صفحة 'dev setup' في 2022 بقيم الإنتاج. • مجموعات Postman بنص صريح — مُشاركة عبر workspace، تتضمَّن tokens حية. • ملفات .env مُلتَزَمة — `git rm` يزيلها من HEAD لكنها تعيش في التاريخ.

لا يتضمَّن أيٌّ منها مُطَّلِعاً داخلياً خبيثاً. جميعها اختصارات workflow عادية تصبح مخلَّفات دائمة.

نموذج التهديد: من يحصل على الوصول فعلاً

قبل اختيار أداة، سمِّ التهديدات:

• مهندس مُبتدئ يترك الشركة ولا يزال لديه تصدير Slack على laptop-ه. • مُتعاقد كان لديه وصول ليوم واحد إلى Notion وحفظ نسخة Markdown. • laptop مطوِّر مخترَق حيث امتصَّ infostealer كل سر بنص صريح على القرص.

تتعامل الخزائن المُشفَّرة مع كل هذه بالطريقة نفسها: السر لا يكون قط بنص صريح في حالة السكون، لذا ciphertext مُسرَّب يكون عديم الفائدة دون مفتاح الخزانة.

التشفير في حالة السكون: لماذا AES-128-CBC عبر Fernet

يستخدم EnvVault Fernet (AES-128-CBC مع HMAC-SHA256) لتشفير الأسرار. هذه ليست أكثر مجموعة تشفير غرابة، وهذه هي النقطة. Fernet قياسي، مُدقَّق بشكل واسع، ومستحيل إساءة استخدامه بطرق تُنتج مخرجات غير آمنة.

حاسم: تستخدم الخزانة `ENVVAULT_ENCRYPTION_KEY` مخصصاً، وليس سر توقيع JWT التطبيق. مشاركة هذين خطأ شائع: إذا زوَّر مهاجم JWT، فإنه يفك تشفير كل سر أيضاً.

خزائن حسب البيئة والفصل البنيوي

خزانة واحدة لـ 'كل شيء' هي الشكل الخطأ. سر الإنتاج لديه احتياجات وصول مختلفة جوهرياً عن سر التطوير.

هيكِل خزائنك كالتالي:

الإنتاج — يُقرَأ فقط من قبل senior on-call، سجل تدقيق عند كل وصول. • Staging — يُقرَأ من قبل أي مهندس، يُكتَب فقط من قبل القائد. • التطوير — الجميع يستطيع القراءة والكتابة.

الفصل ليس فقط بشأن الصلاحيات — إنه بشأن نصف قطر الانفجار.

سير عمل التدوير دون قفل المستخدمين

القدرة التشغيلية الأهم التي تحتاجها الخزانة هي تدوير المفاتيح دون كسر التطبيق. الإجراء:

1. أنشئ مفتاح تشفير جديد. أضفه إلى الخزانة كـ `current`. 2. احتفظ بالمفتاح القديم كـ `legacy`. 3. شغِّل عملية إعادة تشفير: لكل سر، افك التشفير بـ `legacy`، شفِّر بـ `current`. 4. حال اكتمال إعادة التشفير، أزل `legacy`.

بنافذة مفتاح مزدوج، لا تفشل طلب قط بسبب التدوير.

هذه المقالة متاحة عبر مسارات اللغات المدعومة — استخدم محدد اللغة في الأعلى للتبديل.

دليل ميزة

Uptime Monitoring

AlertsDock gives teams uptime monitoring for websites, APIs, TCP checks, DNS checks, SSL expiry, and fast alert routing without enterprise overhead.

اقرأ الدليل

صفحة بديل

Better Stack Alternative

Compare AlertsDock with Better Stack for teams that want a more focused monitoring product covering uptime, cron jobs, status pages, and webhooks.

شاهد المقارنة
AD
AlertsDock Team
14 April 2026
Try AlertsDock free