شارك المقالة

كيفية الحصول على عنوان السيرفر من ملف .env لحماية البيانات في Node.js

لا تتجاهل ملف .env!.. هذا ما يحدث لتطبيقاتك إذا فعلت

كيفية الحصول على عنوان السيرفر من ملف .env لحماية البيانات في Node.js

في عالم تطوير الويب، تُعد حماية البيانات الحساسة مثل كلمات المرور وعناوين السيرفرات من الأولويات القصوى. عند بناء تطبيقات باستخدام Node.js ، يُنصح دائمًا بتجنب كتابة البيانات الحساسة مباشرة في الكود (Hardcoding) لتجنب التسريبات الأمنية. هنا يأتي دور ملف .env، الذي يُستخدم لتخزين المتغيرات البيئية بشكل آمن. في هذا المقال، سنستعرض خطوات استخراج عنوان السيرفر من ملف .env في Node.js


ما هو ملف .env؟

ملف .env (Environment Variables File) هو ملف نصي يُستخدم لتخزين إعدادات البيئة مثل:

  • عناوين قواعد البيانات.
  • مفاتيح APIs.
  • معلومات الاتصال بالسيرفرات.

يُمنع رفع هذا الملف إلى مستودعات الكود العامة (مثل GitHub) لضمان أمان البيانات.


خطوات الحصول على عنوان السيرفر من ملف .env

إنشاء ملف .env

أنشئ ملفًا باسم .env في مجلد مشروعك، وأضف إليه عنوان السيرفر

BASE_URL=https://example.com


تثبيت حزمة dotenv

تُستخدم حزمة dotenv لقراءة المتغيرات من ملف .env

npm i dotenv


تحميل المتغيرات في التطبيق
في ملفك الرئيسي (مثل app.js أو server.js)

استخدم متغير process.env.BASE_URL للحصول على عنوان السيرفر.


مثال حول استخدام env في كود nodejs
const mongoose = require('mongoose')
require('dotenv').config();

mongoose
  .connect(process.env.BASE_URL, {
    useNewUrlParser: true,
    useUnifiedTopology: true,
  })
  .then(() => {
    console.log("DB Connected");
  })
  .catch((err) => console.log(err));
ويمكن استخدام الكود السابق بشكل مباشر في مشروعك مثل الشكل التالي
const express = require('express')
const UserRouter = require('./route/login-router');
// استخدام تثبيت المكتبة بشكل مباشر
require('./configer/db');
var bodyParser = require('body-parser')

const PORT = 3000;
const app = express();
app.use(express.json());

app.use("/user",UserRouter);

app.listen(PORT,()=> {
    console.log("Server running")
});

أدوات مُساعِدة لإدارة البيئة (Environment) في Node.js

  • Dotenv Vault : لإدارة متغيرات البيئة عبر الفرق والبيئات المختلفة.
  • PM2 : مدير عمليات Node.js يدعم تحميل ملفات .env تلقائيًا.
  • Webpack : لحقن المتغيرات البيئية أثناء البناء (Build Time).

كيف تسببت أخطاء .env في كارثة لتطبيق شهير؟

في عام 2021، تعرض تطبيق Parler لاختراق كبير بسبب تخزين بيانات AWS في الكود المصدري على GitHub. لو استخدموا .env، لكانوا تجنبوا الكارثة

شاهد أيضًا
مقالات ذات صلة
كود برمجة بلغة الجافا لطباعة رسم مربع ومستطيل منحني الزوايا | Draw curved square java code

كيفية رسم مربع منحني الزوايا بإستخدام لغة برمجة جافااذا كنت تريد ان تتقوي في تعلم…

شرح كيفية إنشاء Custom Dialog واستدعاءه داخل الActivity في الاندرويد ستوديو

 شرح كيفية إنشاء Custom Dialog واستدعاءه داخل الActivity في الاندرويد ستوديوفي دروس سابقه قمنا معكم…

شرح الحصول على lat و lng للموقع في flutter (الحصول على احدثيات الموقع على الخريطة بالاسم)

شرح الحصول على lat و lng للموقع في flutter (الحصول على احدثيات الموقع على الخريطة…

🚫 مانع الإعلانات مفعل

يجب إيقاف مانع الإعلانات لاستكمال تصفح الموقع