Nama ERP DocsNama ERP Docs
Home
Namasoft.com
Data Model
GitHub
Home
Namasoft.com
Data Model
GitHub
  • Home

    • Search
    • Guides

      • List Views
      • الصلاحيات والأمان

        • نظرة عامة على نظام الصلاحيات
        • ملف الصلاحيات (Security Profile)
        • صلاحيات الحقول والصفحات والقوائم
        • الصلاحيات على مستوى السجلات (المحددات والفلاتر)
        • المستخدمون وتسجيل الدخول
        • الصلاحيات الإضافية المؤقتة (التفويض)
        • .
      • Entity Flows
      • الفواتير والضرائب والخصومات
      • Supply Chain
      • Manufacturing
      • Human Resources
      • e-commerce integration (Magento)
      • .
    • Examples
    • Reprocessing Transactions
    • Frequently Asked Questions
    • AI Generated Entity Flows Documentation

      • Core
      • Accounting Module
      • AI Module
      • Contracting Module
      • CRM Module
      • EGTax Reader Module
      • Freight Management System Module
      • Hospital Management System Module
      • HR Module
      • e-commerce Integration Module
      • Manufacturing Module
      • POS Module
      • Real Estate Module
      • Service Center Module
      • Supply Chain Module
      • .
    • Release Notes

      • 2016
      • 2017
      • 2018
      • 2019
      • 2020
      • 2021
      • 2022
      • 2023
      • 2024
      • 2025
      • 2026
      • .
    • Video Tutorials

      • Supply Chain Videos
      • Report Wizard Videos
      • Human Resources Videos
      • .

نظرة عامة على نظام الصلاحيات

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

تخيّل الأمر كسلسلة من الأبواب يجب على المستخدم المرور منها:

  1. التحقق من الهوية (Authentication) — هل تستطيع الدخول إلى النظام أصلاً؟ (تسجيل الدخول، كلمة السر، LDAP، التحقق بخطوتين، عدد الجلسات)
  2. القوائم والتنقل — ما عناصر القوائم التي تراها أساساً؟
  3. الصلاحيات على مستوى الأنواع — لكل نوع ملف أو مستند (فواتير، أصناف، قيود يومية...) ماذا يمكنك أن تفعل؟ مطالعة؟ تعديل؟ حذف؟ طباعة؟ وكم مرة؟
  4. الرؤية على مستوى السجلات — من بين كل فواتير المبيعات في قاعدة البيانات، أيها تستطيع رؤيته؟ هنا يأتي دور المحددات (Dimensions) و"السجلات التي أنشأها فقط" والفلاتر الإضافية (Extra Filters).
  5. صلاحيات الحقول والصفحات والقوائم — داخل السجل الذي تستطيع فتحه، ما الحقول المخفية أو الممنوعة من التعديل؟ ما الصفحات (Tabs) الظاهرة؟ وما شاشات العرض (List Views) المسموح بها؟
  6. الإجراءات والصلاحيات المخصصة — هل تستطيع تشغيل زر/إجراء معين على شاشة؟ وهل تحمل صلاحية مخصصة تتطلبها ميزة معينة؟

كل طبقة من هذه الطبقات تُضبط في أحد مكانين، وفهم العلاقة بينهما هو مفتاح النموذج كله.

حجرا الأساس: ملف الصلاحيات والمستخدم

ملف الصلاحيات (Security Profile)

ملف الصلاحيات هو قالب صلاحيات قابل لإعادة الاستخدام. عادةً تنشئ ملفاً واحداً لكل دور وظيفي — "محاسب"، "أمين مخزن"، "مشرف مبيعات" — ثم تسنده إلى عدة مستخدمين. يحتوي الملف على:

  • الصلاحيات الأساسية (Standard Security Lines): صلاحيات لكل نوع (مطالعة، تعديل، حذف، طباعة، مراجعة...)
  • إعدادات الحقول (Field Settings): إخفاء حقول معينة أو منع تعديلها
  • صلاحيات الصفحات (Page Security): إخفاء صفحات كاملة أو جعلها للقراءة فقط
  • صلاحيات مطالعة القوائم (List View Security): السماح بشاشات عرض معينة أو منعها
  • صلاحيات مخصصة (Custom Capabilities): صلاحيات مسماة تتحقق منها ميزات معينة
  • الفلاتر الإضافية (Extra Filters): فلاتر على مستوى الصفوف تحدد السجلات التي يراها المستخدم
  • صلاحيات الإجراءات (Action Security): تفعيل أو تعطيل إجراءات معينة على الشاشات
  • السماح/المنع في القوائم: التحكم في ظهور عناصر القوائم

راجع ملف الصلاحيات للجولة الكاملة.

المستخدم (User)

سجل المستخدم يحمل هوية الدخول (كود المستخدم، كلمة السر، الإيميل)، والربط بالموظف، وملف الصلاحيات المسند — والأهم: نسخاً محلية خاصة به من نفس جداول الصلاحيات: الصلاحيات الأساسية، الصلاحيات المخصصة، إعدادات الحقول، صلاحيات الصفحات، والفلاتر الإضافية.

وهنا جوهر النموذج: أي شيء تعرّفه على مستوى المستخدم يتقدم على ملف الصلاحيات للنوع المطابق. ملف الصلاحيات يعطي الدور إعداداته الافتراضية، وسجل المستخدم يصنع الاستثناءات لشخص واحد دون المساس بالبقية.

راجع المستخدمون وتسجيل الدخول.

كيف يُحسم فحص الصلاحية؟

عندما يسأل النظام "هل يستطيع المستخدم فلان تعديل فاتورة مبيعات؟" تُحسب الإجابة بترتيب ثابت:

  1. اختصار الصلاحيات الكاملة: إذا كان ملف صلاحيات المستخدم به علامة صلاحيات كاملة (Full Authority) فالإجابة نعم — دون أي فحوصات أخرى. المستخدم المدمج admin يستخدم دائماً ملف الصلاحيات الافتراضي كامل الصلاحيات.
  2. سطور المستخدم أولاً: يفحص النظام سطور الصلاحيات الأساسية المسجلة على المستخدم نفسه. إذا وُجد سطر يطابق فاتورة المبيعات فهذا السطر هو الذي يقرر — حتى لو قال ملف الصلاحيات غير ذلك.
  3. سطور ملف الصلاحيات ثانياً: إذا لم يطابق أي سطر على مستوى المستخدم، تُفحص سطور ملف الصلاحيات بنفس الطريقة.
  4. المنع هو الافتراضي: إذا لم يوجد سطر مطابق لا على المستخدم ولا على الملف، تُرفض الصلاحية.

كيف "يطابق" السطر نوعاً معيناً؟

داخل كل مجموعة سطور (مستخدم أو ملف) للمطابقة أيضاً ترتيب أولوية:

  1. السطر الذي يحدد في حقل النوع نوع الكيان بعينه (مثلاً فاتورة مبيعات) يفوز أولاً.
  2. ثم السطر الذي تحتوي قائمة الأنواع المحددة فيه — وهي سجل من نوع قائمة أنواع (EntityType List) — على هذا النوع.
  3. ثم السطر العام (Wildcard) الذي تُرك فيه النوع وقائمة الأنواع فارغين، فيسري على كل ما لم يغطه سطر أكثر تحديداً.

هذا يتيح لك كتابة ملفات مثل: "سطر عام متساهل لكل الأنواع، وسطر أكثر تشدداً للمستندات المالية (عبر قائمة أنواع)، وسطر خاص جداً لقيود اليومية وحدها."

قوائم الأنواع (EntityType List)

سجلات قائمة الأنواع (إدارة النظام > تخصيص شكل النظام > قائمة أنواع) هي مجموعات مسماة بسيطة من أنواع الكيانات. وهي مستخدمة في كل شاشات الصلاحيات، بحيث يمكن لقائمة واحدة مثل "كل مستندات المبيعات" أن تُستخدم في الصلاحيات الأساسية وإعدادات الحقول وصلاحيات الصفحات والفلاتر الإضافية في آن واحد.

والتفويض أيضاً له دور

إذا فوّض شخص ما صلاحياته لهذا المستخدم عبر مستند صلاحيات إضافية مؤقتة (Security Profile Transfer)، فإن المستخدم يحمل فعلياً صلاحيات المفوِّضين خلال فترة التفويض — تُمنح الصلاحية إذا منحها أي منهم. راجع الصلاحيات الإضافية المؤقتة.

أين يُجاب عن كل سؤال؟

السؤالمكان الضبطصفحة الدليل
هل يستطيع المستخدم الدخول؟ من الجوال فقط؟ كم جلسة؟إعدادات المستخدم والإعدادات العامةالمستخدمون وتسجيل الدخول
ماذا يفعل المستخدم بالنوع الفلاني؟الصلاحيات الأساسية (ملف أو مستخدم)ملف الصلاحيات
أي سجلات النوع الفلاني يراها؟المحددات، سجلات المنشئ، الفلاتر الإضافية، صلاحيات السجلاتالصلاحيات على مستوى السجلات
أي حقول / صفحات / شاشات عرض؟إعدادات الحقول، صلاحيات الصفحات، صلاحيات مطالعة القوائمصلاحيات الحقول والصفحات والقوائم
هل يشغّل الإجراء الفلاني على الشاشة الفلانية؟صلاحيات الإجراءاتملف الصلاحيات
هل يغطي زميل مهام شخص في إجازة؟الصلاحيات الإضافية المؤقتةالتفويض

المستخدم admin حالة خاصة

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

Edit On github
Last Updated:: 6/4/26, 4:14 PM
Next
ملف الصلاحيات (Security Profile)