تخطَّ إلى المحتوى الرئيسي

كيف نتحدث عن الأمان

لا نستخدم — ولن نستخدم — عبارات تسويقية منمقة مثل «أمان بمعايير عسكرية» أو «حماية بمستوى البنوك» أو «آمن 100%» أو «مستحيل اختراقه». لا توجد بيئة رقمية آمنة بنسبة مكتملة، والأمان ممارسة مستمرة لا حالة نهائية. موقفنا الهندسي واحد: «الأمان مصمَّم داخل المعمارية ونموذج الوصول وسير العمل التشغيلي» — ونوثق ما نفعله فعلاً بدل تجميل ما لا نفعله.

1.عزل متعدد المستأجرين

Multi-Tenant Isolation

كل مدرسة مستأجر (Tenant) مستقل: بياناتها وطاقمها وطلابها تعيش في مساحة منطقية خاصة بها. الوصول مقيّد بسياق المدرسة المصادق عليها — لا يمكن لجلسة مدرسة أن تلمس بيانات مدرسة أخرى في الاستعلامات العادية أو عبر المعرفات المباشرة.

2.التفويض على الخادم

Server-Side Authorization

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

3.التحكم بالوصول حسب الدور

Role-Based Access Control (RBAC)

لكل مستخدم دور، ولكل دور مصفوفة صلاحيات مرتبطة بالموارد: قراءة وكتابة لكل مورد على حدة. الأدوار معرّفة مركزياً وتُطبق موحدة على كل مسارات النظام.

4.المصادقة والجلسات

Authentication & Sessions

كلمات المرور لا تُخزَّن نصاً أبداً — تُخزَّن بصمة تشفيرية أحادية الاتجاه. الجلسات كوكيز httpOnly موقعة رقمياً لا تقرأها السكربتات، ويُرفق معها دور المستخدم ومدرسته في كل طلب.

5.حد المحاولات

Rate Limiting

محاولات الدخول وعمليات التسجيل والتحقق العام ونموذج التواصل — كلها محدودة المعدل لكل عنوان: تجاوز الحد يُقابل برفض مؤقت واضح، لتقليل مساحة التخمين والإغراق.

6.سجل التدقيق

Audit Logging

العمليات الحساسة للمنصة (تفعيل الكروت، تسجيل المدارس، تحركات نقاط البيع) تُسجَّل في سجل نشاط زمني — مرجع لمراجعة الأحداث لاحقاً بدل الاعتماد على الذاكرة.

7.عزل البيانات

Data Isolation

كل استعلام مدرسي — قراءة أو كتابة — يمر عبر مرشح سياق المدرسة المستمدة من الجلسة لا من الطلب. بيانات الطالب تصل لولي الأمر المربوط له فقط: الفلترة تحدث في الخادم لا في التطبيق.

8.أمان واجهات API

API Security

واجهات النظام تتحقق من الجلسة والدور والملكية قبل أي عملية، وتعيد رفضاً صريحاً (401/403/429) عند الفشل — ولا تكشف رسائل الخطأ تفاصيل داخلية تفيد أي جهة استطلاعية.

اكتشفت ملاحظة أمنية؟

نتعامل مع كل إبلاغ أمني بجدية وسرية — راجع سياسة الإفصاح الأمني المسؤول لطريقة الإبلاغ الصحيحة.