الثوابت
إحدى عشرة قاعدة تفرضها قاعدة البيانات، مهما حاول التطبيق أو أي وكيل.
تُفرَض هذه القواعد في Postgres، لا في الواجهة وحدها. لكل قاعدة اختبار يحاول كسرها ويتحقق من أن الكتابة تُرفض.
| # | القاعدة بكلام مبسّط | كيف تُفرَض |
|---|---|---|
| 1 | لا يستطيع تغيير حالة فوترة الوحدة أو فئتها أو إضافة الذكاء الاصطناعي أو نهاية الفترة إلا المتجر. | لا تُكتب تلك الأعمدة إلا بدور الخدمة؛ وللمالكين تبديل enabled فقط. |
| 2 | تبدأ الوحدات الجديدة مقفلة، ولا يمكن تشغيل وحدة مقفلة. | القيمة الافتراضية للعمود مع مُحفّز حارس على وحدات مساحة العمل. |
| 3 | الوحدة المقفلة أو المعطّلة أو المضبوطة لك على none لا تعرض أي صفوف البتة. | مساعد وصول واحد (so_can_access) في كل سياسة قراءة. |
| 4 | الموافقة على مهمة أو إطلاقها أو إجهاضها يحتاج إلى publish. يُسجَّل الموافق والمُطلِق دائمًا باسم من فعل ذلك، ويحتاج الإطلاق إلى موافقة سابقة. | مُحفّز حارس المهمات. |
| 5 | لا إطلاق بوحدة موقوفة على الأرض، أو باحتياطي بطارية دون 20 %، أو بارتفاع أعلى من 120 m من دون إعفاء. | قيود التحقق مع مُحفّز حارس المهمات. |
| 6 | أوامر المركبات تحتاج إلى publish على الأسطول، وتُسجَّل باسم المستدعي نفسه، ولا يستطيع الوكلاء إرسالها أبدًا. | سياسة إدراج تثبّت issued_by على المستدعي، مع سقف الوكيل. |
| 7 | إفراج وحدة للخدمة يحتاج إلى publish على الصيانة، ويجب أن يقوم به شخص غير الفني الذي أدّى العمل. | مُحفّز حارس أمر العمل (الأعين الأربع). |
| 8 | سجلات الطيران للإضافة فقط: لا يستطيع أحد تعديل سجل أو حذفه بعد كتابته. | لا منح إدراج أو تحديث أو حذف للمستخدمين الذين سجّلوا الدخول؛ والنظام هو من يكتبها. |
| 9 | لا تستطيع إلا تعليم إشعاراتك كمقروءة؛ ولا تستطيع إعادة كتابتها. | منح على مستوى العمود لـ read_at فقط. |
| 10 | تُكتب قيود التدقيق دائمًا باسم المستدعي؛ ولا يستطيع أحد تزوير قيد لشخص آخر أو لوكيل أو للنظام. | سياسة إدراج. |
| 11 | لا يغيّر الوصول إلى الوحدات إلا المالكون والمسؤولون، ولا يتجاوز الوكلاء edit أبدًا. | السياسات مع مُحفّز حارس لوصول الوحدات. |
تأتي الحدود في القاعدة 5 من حزمة القواعد المشتركة (LIMITS). إنها قيم افتراضية لا استشارة قانونية؛ راجع القواعد في بلدك.
انظر أيضًا الأمان.