تمت ترجمة هذه الوثائق تلقائيًا بواسطة الذكاء الاصطناعي.
يركز NocoBase على أمان البيانات والتطبيقات بدءًا من تصميم الوظائف وصولاً إلى تنفيذ النظام. يتضمن النظام الأساسي العديد من ميزات الأمان المضمنة مثل مصادقة المستخدم، والتحكم في الوصول، وتشفير البيانات، كما يتيح مرونة في تكوين سياسات الأمان وفقًا للاحتياجات الفعلية. سواء كان الأمر يتعلق بحماية بيانات المستخدم، أو إدارة صلاحيات الوصول، أو عزل بيئات التطوير والإنتاج، يوفر NocoBase أدوات وحلولاً عملية. يهدف هذا الدليل إلى تقديم إرشادات للاستخدام الآمن لـ NocoBase، ومساعدة المستخدمين على حماية أمان البيانات والتطبيقات والبيئة، وضمان الاستخدام الفعال لوظائف النظام مع الحفاظ على أمان المستخدم.
تُستخدم مصادقة المستخدم لتحديد هويات المستخدمين، ومنعهم من الدخول إلى النظام دون تصريح، وضمان عدم إساءة استخدام هوياتهم.
بشكل افتراضي، يستخدم NocoBase تقنية JWT (JSON Web Token) للمصادقة على واجهات برمجة التطبيقات (APIs) من جانب الخادم. يمكن للمستخدمين تعيين مفتاح الرمز المميز (Token) عبر متغير البيئة APP_KEY. يُرجى إدارة مفتاح الرمز المميز للتطبيق بشكل صحيح لمنع تسربه خارجيًا. تجدر الإشارة إلى أنه إذا تم تعديل APP_KEY، فستصبح الرموز المميزة القديمة غير صالحة.
يدعم NocoBase تعيين سياسات الأمان التالية لرموز المستخدمين المميزة (Tokens):
| عنصر التكوين | الوصف
| صلاحية الجلسة | أقصى مدة صلاحية لكل تسجيل دخول للمستخدم. خلال صلاحية الجلسة، يتم تحديث الرمز المميز (Token) تلقائيًا. بعد انتهاء المهلة، يُطلب من المستخدم تسجيل الدخول مرة أخرى. |
| صلاحية الرمز المميز (Token) | مدة صلاحية كل رمز مميز (API Token) يتم إصداره. بعد انتهاء صلاحية الرمز المميز، إذا كان ضمن فترة صلاحية الجلسة ولم يتجاوز حد التحديث، فسيقوم الخادم بإصدار رمز مميز جديد تلقائيًا للحفاظ على جلسة المستخدم، وإلا سيُطلب من المستخدم تسجيل الدخول مرة أخرى. (يمكن تحديث كل رمز مميز مرة واحدة فقط) |
| حد تحديث الرمز المميز المنتهي الصلاحية | أقصى مدة زمنية مسموح بها لتحديث الرمز المميز بعد انتهائه. |
عادةً، نوصي المسؤولين بما يلي:
بشكل افتراضي، يتم تخزين رموز المستخدمين المميزة (Tokens) في LocalStorage بالمتصفح. بعد إغلاق صفحة المتصفح وفتحها مرة أخرى، إذا كان الرمز المميز لا يزال صالحًا، فلن يحتاج المستخدم إلى تسجيل الدخول مرة أخرى.
إذا كنت ترغب في أن يقوم المستخدمون بتسجيل الدخول في كل مرة يدخلون فيها إلى الصفحة، يمكنك تعيين متغير البيئة API_CLIENT_STORAGE_TYPE=sessionStorage لحفظ الرمز المميز للمستخدم في SessionStorage بالمتصفح، وذلك لتحقيق هدف تسجيل دخول المستخدمين في كل مرة يفتحون فيها الصفحة.
الإصدار الاحترافي وما فوق
يدعم NocoBase تعيين قواعد كلمات المرور وسياسات قفل محاولات تسجيل الدخول بكلمة المرور لجميع المستخدمين، لتعزيز أمان تطبيقات NocoBase التي تم تمكين تسجيل الدخول بكلمة المرور فيها. يمكنك الرجوع إلى سياسة كلمة المرور لفهم كل عنصر تكوين.
| عنصر التكوين | الوصف |
|---|---|
| طول كلمة المرور | الحد الأدنى المطلوب لطول كلمة المرور، والحد الأقصى هو 64 حرفًا. |
| تعقيد كلمة المرور | تعيين متطلبات تعقيد كلمة المرور، وأنواع الأحرف التي يجب تضمينها. |
| عدم تضمين اسم المستخدم في كلمة المرور | تعيين ما إذا كانت كلمة المرور يمكن أن تتضمن اسم المستخدم الحالي. |
| تذكر سجل كلمات المرور | تذكر عدد كلمات المرور التي استخدمها المستخدم مؤخرًا. لا يمكن للمستخدم إعادة استخدامها عند تغيير كلمة المرور. |
| عنصر التكوين | الوصف |
|---|---|
| فترة صلاحية كلمة المرور | فترة صلاحية كلمات مرور المستخدمين. يجب على المستخدمين تغيير كلمات مرورهم قبل انتهائها لإعادة حساب فترة الصلاحية. إذا لم يتم تغيير كلمة المرور قبل انتهائها، فلن يتمكن المستخدم من تسجيل الدخول بكلمة المرور القديمة وسيحتاج إلى مساعدة المسؤول لإعادة تعيينها. إذا تم تكوين طرق تسجيل دخول أخرى، يمكن للمستخدم تسجيل الدخول باستخدام تلك الطرق. |
| قناة إشعار تذكير انتهاء صلاحية كلمة المرور | خلال 10 أيام قبل انتهاء صلاحية كلمة مرور المستخدم، سيتم إرسال تذكير في كل مرة يسجل فيها المستخدم الدخول. |
| عنصر التكوين | الوصف |
|---|---|
| الحد الأقصى لمحاولات تسجيل الدخول بكلمة مرور غير صالحة | تعيين الحد الأقصى لعدد محاولات تسجيل الدخول التي يمكن للمستخدم تجربتها خلال فترة زمنية محددة. |
| الحد الأقصى للفاصل الزمني لمحاولات تسجيل الدخول بكلمة مرور غير صالحة (بالثواني) | تعيين الفاصل الزمني لحساب الحد الأقصى لمحاولات تسجيل الدخول غير الصالحة للمستخدم، بالثواني. |
| وقت القفل (بالثواني) | تعيين الوقت الذي يتم فيه قفل المستخدم بعد تجاوز حد تسجيل الدخول بكلمة مرور غير صالحة (0 يعني لا يوجد حد). خلال فترة قفل المستخدم، سيُمنع من الوصول إلى النظام بأي طريقة مصادقة، بما في ذلك مفاتيح API. |
عادةً، نوصي بما يلي:

الإصدار الاحترافي وما فوق، متضمن في إضافة سياسة كلمة المرور
إدارة المستخدمين الذين تم قفلهم لتجاوزهم حد تسجيل الدخول بكلمة مرور غير صالحة. يمكنك إلغاء قفلهم يدويًا أو إضافة المستخدمين غير الطبيعيين يدويًا إلى قائمة القفل. بعد قفل المستخدم، سيُمنع من الوصول إلى النظام بأي طريقة مصادقة، بما في ذلك مفاتيح API.

يدعم NocoBase استدعاء واجهات برمجة تطبيقات النظام (APIs) عبر مفاتيح API. يمكن للمستخدمين إضافة مفاتيح API في تكوين إضافة مفاتيح API.

إضافة تجارية
يوفر NocoBase مجموعة غنية من إضافات مصادقة تسجيل الدخول الموحد (SSO)، تدعم العديد من البروتوكولات الرئيسية مثل OIDC و SAML 2.0 و LDAP و CAS. في الوقت نفسه، يمتلك NocoBase واجهات تمديد كاملة لطرق المصادقة، والتي يمكن أن تدعم التطوير السريع وربط أنواع مصادقة أخرى. يمكنك بسهولة ربط موفر الهوية (IdP) الحالي الخاص بك مع NocoBase لإدارة هويات المستخدمين مركزيًا على IdP لتعزيز الأمان.

إصدار المؤسسات
تتطلب المصادقة الثنائية من المستخدمين تقديم معلومة ثانية صالحة لإثبات هويتهم عند تسجيل الدخول بكلمة مرور، مثل إرسال رمز تحقق ديناميكي لمرة واحدة إلى جهاز المستخدم الموثوق به، للتحقق من هوية المستخدم وضمان عدم إساءة استخدامها، مما يقلل من مخاطر تسرب كلمة المرور.
إصدار المؤسسات
يدعم NocoBase تعيين قوائم سوداء أو بيضاء لعناوين IP الخاصة بوصول المستخدمين.
من خلال تعيين أدوار مختلفة في النظام، وتعيين الصلاحيات المناسبة لكل دور، يمكن التحكم بدقة في صلاحيات وصول المستخدمين إلى الموارد. يحتاج المسؤولون إلى التكوين بشكل معقول وفقًا لاحتياجات السيناريوهات الفعلية لتقليل مخاطر تسرب موارد النظام.
عند تثبيت NocoBase لأول مرة، يقوم التطبيق بتهيئة مستخدم جذر (root user). يُنصح المستخدمون بتعديل المعلومات المتعلقة بالمستخدم الجذر عبر تعيين متغيرات بيئة النظام، لتجنب الاستغلال الضار.
INIT_ROOT_USERNAME - اسم المستخدم الجذرINIT_ROOT_EMAIL - البريد الإلكتروني للمستخدم الجذرINIT_ROOT_PASSWORD - كلمة مرور المستخدم الجذر، يُرجى تعيين كلمة مرور قوية.في الاستخدام اللاحق للنظام، يُنصح المستخدمون بإعداد واستخدام حسابات مسؤولين أخرى، وتجنب استخدام المستخدم الجذر مباشرة لتشغيل التطبيق قدر الإمكان.
يتحكم NocoBase في صلاحيات وصول المستخدمين إلى الموارد عن طريق تعيين الأدوار في النظام، ومنح الصلاحيات لأدوار مختلفة، وربط المستخدمين بالأدوار المقابلة. يمكن لكل مستخدم أن يمتلك عدة أدوار، ويمكن للمستخدمين التبديل بين الأدوار لتشغيل الموارد من وجهات نظر مختلفة. إذا تم تثبيت إضافة الأقسام، يمكن أيضًا ربط الأدوار بالأقسام، بحيث يمتلك المستخدمون الأدوار المرتبطة بقسمهم.

تتضمن صلاحيات تكوين النظام الإعدادات التالية:
تُستخدم صلاحيات القائمة للتحكم في صلاحية المستخدمين للدخول إلى صفحات القائمة المختلفة، بما في ذلك سطح المكتب والجوال.

يوفر NocoBase تحكمًا دقيقًا في صلاحيات وصول المستخدمين إلى البيانات داخل النظام، مما يضمن أن يتمكن المستخدمون المختلفون من الوصول فقط إلى البيانات المتعلقة بمسؤولياتهم، ويمنع تجاوز الصلاحيات وتسرب البيانات.


تعيين نطاق البيانات التي يمكن للمستخدمين تشغيلها. لاحظ أن نطاق البيانات هنا يختلف عن نطاق البيانات المكون في الكتلة. يُستخدم نطاق البيانات المكون في الكتلة عادةً لتصفية البيانات من جانب الواجهة الأمامية فقط. إذا كنت بحاجة إلى التحكم الصارم في صلاحيات وصول المستخدمين إلى موارد البيانات، فيجب عليك تكوينه هنا، حيث يتم التحكم فيه من جانب الخادم.

أثناء عملية تخزين البيانات ونسخها احتياطيًا، يوفر NocoBase آلية فعالة لضمان أمان البيانات.
يتم تشفير كلمات مرور مستخدمي NocoBase وتخزينها باستخدام خوارزمية scrypt، والتي يمكنها مقاومة الهجمات واسعة النطاق على الأجهزة بفعالية.
عند استخدام خدمات طرف ثالث في NocoBase، نوصي بتكوين معلومات مفتاح الطرف الثالث في متغيرات البيئة وتخزينها مشفرة. هذا يوفر الراحة في التكوين والاستخدام في أماكن مختلفة ويعزز الأمان أيضًا. يمكنك الرجوع إلى الوثائق لمعرفة طرق الاستخدام التفصيلية.
بشكل افتراضي، يتم تشفير المفتاح باستخدام خوارزمية AES-256-CBC. سيقوم NocoBase تلقائيًا بإنشاء مفتاح تشفير بطول 32 بت وحفظه في storage/.data/environment/aes_key.dat. يجب على المستخدمين الاحتفاظ بملف المفتاح بشكل صحيح لمنع سرقته. إذا كنت بحاجة إلى ترحيل البيانات، فيجب ترحيل ملف المفتاح معه.

إذا كانت هناك حاجة لتخزين ملفات حساسة، يُنصح باستخدام خدمة تخزين سحابي متوافقة مع بروتوكول S3، وبالتعاون مع الإضافة التجارية File storage: S3 (Pro)، لتحقيق قراءة وكتابة خاصة للملفات. إذا كانت هناك حاجة للاستخدام في بيئة الشبكة الداخلية، يُنصح باستخدام تطبيقات تخزين تدعم النشر الخاص ومتوافقة مع بروتوكول S3، مثل MinIO.

لضمان أمان بيانات التطبيق وتجنب فقدان البيانات، نوصي بالنسخ الاحتياطي لقاعدة البيانات بانتظام.
يمكن لمستخدمي الإصدار مفتوح المصدر الرجوع إلى https://www.nocobase.com/en/blog/nocobase-backup-restore للنسخ الاحتياطي باستخدام أدوات قاعدة البيانات، كما نوصي بالاحتفاظ بملفات النسخ الاحتياطي بشكل صحيح لمنع تسرب البيانات.
يمكن لمستخدمي الإصدار الاحترافي وما فوق استخدام مدير النسخ الاحتياطي لإجراء النسخ الاحتياطي، ويوفر مدير النسخ الاحتياطي الميزات التالية:

يعد النشر الصحيح لـ NocoBase وضمان أمان بيئة التشغيل أحد المفاتيح لضمان أمان تطبيقات NocoBase.
لمنع هجمات الوسيط (Man-in-the-Middle)، نوصي بإضافة شهادة SSL/TLS لموقع تطبيق NocoBase الخاص بك لضمان أمان البيانات أثناء نقلها عبر الشبكة.
إصدار المؤسسات
في البيئات ذات متطلبات أمان البيانات الأكثر صرامة، يدعم NocoBase تمكين تشفير نقل API، لتشفير محتوى طلبات واستجابات API، وتجنب النقل بالنص الواضح، وزيادة عتبة كسر البيانات.
بشكل افتراضي، لا يحتاج NocoBase إلى التواصل مع خدمات طرف ثالث، وفريق NocoBase لا يجمع أي معلومات عن المستخدمين. يتطلب الاتصال بخادم NocoBase فقط عند تنفيذ العمليتين التاليتين:
إذا كنت مستعدًا للتضحية ببعض الراحة، فإن هاتين العمليتين تدعمان الإكمال دون اتصال بالإنترنت، ولا تتطلبان اتصالاً مباشرًا بخادم NocoBase.
يدعم NocoBase النشر الكامل داخل الشبكة الداخلية (intranet)، راجع:
الإصدار الاحترافي وما فوق
في الممارسات الفعلية، نوصي مستخدمي المؤسسات بعزل بيئات الاختبار عن بيئات الإنتاج لضمان أمان بيانات التطبيق وبيئة التشغيل في بيئة الإنتاج. باستخدام إضافة إدارة الترحيل، يمكن ترحيل بيانات التطبيق بين البيئات المختلفة.

إصدار المؤسسات
تسجل وظيفة سجلات التدقيق في NocoBase سجلات أنشطة المستخدمين داخل النظام. من خلال تسجيل العمليات الرئيسية وسلوكيات الوصول للمستخدمين، يمكن للمسؤولين:


يوفر NocoBase أنواعًا متعددة من السجلات لمساعدة المستخدمين على فهم حالة تشغيل النظام وسجلات السلوك، واكتشاف مشكلات النظام وتحديد موقعها في الوقت المناسب، مما يضمن أمان النظام وقابليته للتحكم من أبعاد مختلفة. تشمل أنواع السجلات الرئيسية ما يلي: