طلب محدّد النطاق بالمستأجر والوصول إلى PHI
كيف يحدّد كل طلب مستأجره، ويربط مستوى البيانات الصحيح، ولا يعيد إلا بيانات PHI المسموح بها بعد فكّ تشفيرها وتدقيقها.
- 1يصل طلب من تطبيق أحادي الصفحة إلى nginx، الذي يربط أصل الطلب أو نطاقه الفرعي بترويسة المستأجر
- 2تحدّد OrgContextMiddleware المستأجر من النطاق الفرعي والترويسة وJWT وتتحقّق منها تحقّقًا متقاطعًا، وتعيد 403 وفق مبدأ الفشل المغلق عند عدم التطابق
- 3ثم تربط معرّف المستأجر، ودور العضو وصلاحياته، والاسم البديل لقاعدة بيانات مستوى بيانات المستأجر، ومتغيّرات جلسة RLS في PostgreSQL
- 4يُخضِع الـ viewset في DRF المُستدعي لبوّابة كتالوج صلاحيات RBAC المُخزَّن مؤقتًا في Redis، ولفحوص مجموعات الحقول في phi_guard
- 5يُنفَّذ الـ queryset الموجَّه تحت الاسم البديل المربوط مع تفعيل RLS، وتُفكّ شفرة أعمدة PHI المشفّرة بمفتاح تشفير البيانات (DEK) الخاص بالمستأجر
- 6يُسقط المُسلسِل المُقيَّد بالصلاحيات الحقول الخارجة عن النطاق، وتسجّل PHIAuditMiddleware مدخلة تدقيق وفق مبدأ الفشل المغلق قبل إعادة الاستجابة



