نطاق فرعي وشهادة SSL لكل Tenant في SaaS

شرح البنية الأساسية لتوجيه نطاقات المستأجرين عبر Wildcard DNS وتأمينها بشهادة تغطي جميع النطاقات الفرعية.

عُمَر العلوي مقال

يمكن تنظيم روابط المستأجرين في منصة SaaS بمسار داخل النطاق الرئيسي، مثل example.com/tenant-1، أو بنطاق فرعي مستقل، مثل tenant-1.example.com. المسار أبسط في DNS وSSL، بينما يمنح النطاق الفرعي هوية أوضح لكل مستأجر لكنه يحتاج إعدادًا إضافيًا.

في Laravel يمكن تعريف Domain Routing لنمط {tenant}.{mainDomain}، ثم استخدام Middleware للتحقق من المستأجر وتحميل بياناته وعزل استعلاماته. ويجب حجز أسماء مثل www وapi وadmin حتى لا يستطيع المستأجر اختيارها.

على مستوى DNS، يوجَّه سجل Wildcard باسم * إلى الخادم. ثم تُصدر شهادة تغطي example.com و*.example.com، وتُثبت مع مفتاحها الخاص على Nginx أو Apache أو منصة الاستضافة. بعد التأكد من صلاحية الشهادة بين Cloudflare وخادم الأصل، يمكن تفعيل Full (Strict) لتشفير الاتصال والتحقق منه في الاتجاهين.

بهذه البنية لا تحتاج إلى إصدار شهادة جديدة لكل نطاق فرعي. ومع ذلك، يبقى عزل بيانات المستأجرين والتحقق من المضيف والصلاحيات جزءًا مستقلًا وأساسيًا من تصميم Multi-tenancy.

شاركني رأيك

يسعدني مشاركة وجهة نظرك من خلال ترك تعليق في المقالة الأصلية في مواقع التواصل

مقالات مرتبطة

معمارية البرمجيات والأنظمة ·

استخدم Pipeline لتنظيم القواعد المتتابعة

عندما تمر العملية بسلسلة واضحة من الفحوصات والتحويلات، يفصل Pipeline كل خطوة ويجعل ترتيبها واختبارها أكثر وضوحًا.

قراءة المقال

معمارية البرمجيات والأنظمة ·

قسّم الموديل الكبير وفق مسؤوليات المجال

يمكن للـ Traits تحسين قابلية قراءة موديل Laravel عندما تجمع سلوكًا مترابطًا، لكنها لا تعالج غياب الحدود المعمارية وحدها.

قراءة المقال