وراء الكواليس: كيف نقوم بتنفيذ التعاون بين المستخدمين داخل تطبيق متعدد المستأجرين
ممارسات ورؤى حول تنفيذ ميزة دعوة وإدارة الوصول إلى الأدوار مثل التعاون في Logto Cloud في تطبيق متعدد المستأجرين.
ممارسات ورؤى حول تنفيذ ميزة دعوة وإدارة الوصول إلى الأدوار مثل التعاون في Logto Cloud في تطبيق متعدد المستأجرين.
الأسبوع الماضي، قدمنا ميزة التعاون على Logto Cloud. إذا فاتك، الق نظرة! الآن، يمكنك دعوة الزملاء ورفاق العمل إلى مستأجري Logto الحاليين لديك، والتعاون معًا في الحفاظ على نظام الهوية لتطبيقاتك.
في هذا الإصدار من الميزة، أضفنا دورين لكل مستأجر في Logto:
متسقًا مع التزامنا باستخدام أدواتنا الخاصة، قمنا باستخدام RBAC (التحكم في الوصول القائم على الأدوار) وميزة المنظمات في بناء التعاون بين المستخدمين. إذا كنت جديدًا على RBAC ، اطلع على منشورنا السابق للبدء.
في هذا المنشور، دعونا نلقي نظرة على ما تم في تنفيذ هذه الميزة، وكيف يمكن أن تفيدك هذه الممارسات إذا كنت تطور تطبيقات متعددة المنظمات.
كل مستأجر في Logto Cloud يعمل كمنظمة مستقلة في نظامنا، مدعومة بميزة المنظمات الخاصة بنا. لتقديم أدوار مدير المستأجر والمتعاون، قمنا بإنشاء دورين تنظيميَين في قالب المنظمة، كل منهما مُعين بمجموعة محددة من أذونات المنظمة.


لقد وفرنا مجموعة من واجهات برمجة التطبيقات المتعلقة بالدعوة في ميزة المنظمات. مع هذه APIs، يمكنك، على سبيل المثال:
POST /api/organization-invitations إنشاء وإرسال دعوة للانضمام إلى منظمة عبر عنوان بريد إلكترونيGET /api/organization-invitations & GET /api/organization-invitations/{id} الحصول على دعواتكPUT /api/organization-invitations/{id}/status قبول أو رفض الدعوة من خلال تحديث حالة الدعوةلمزيد من التفاصيل، ارجع إلى كامل توثيق API.
بما أن الدعوات تُرسل عبر البريد الإلكتروني، تأكد من تكوين منظم البريد الإلكتروني لديك بشكل صحيح. في هذا الإصدار، قدمنا نوع استخدام جديدًا لقالب البريد الإلكتروني، OrganizationInvitation، مما يسمح بتخصيص قالب دعوة البريد الإلكتروني.

سيقبل هذا القالب افتراضيًا متغير {{link}}، وهو الرابط إلى صفحة هبوط Logto Console، حيث يمكن للمستخدمين قبول الدعوة والانضمام إلى مستأجر Logto. تبدو إحدى صفحات الهبوط في Logto Cloud كما في لقطة الشاشة أدناه:

للمزيد من التفاصيل حول إرسال دعوة البريد الإلكتروني من خلال Management API، راجع توثيق API.
مع الإعدادات أعلاه، يمكننا إرسال الدعوات عبر البريد الإلكتروني، ويمكن للمدعوين الانضمام إلى المنظمة بالدور المعين.
ستحمل المستخدمون مختلفِ الأدوار التنظيمية نطاقات (أذونات) مختلفة في رموز الوصول الخاصة بهم. لذلك، يجب على تطبيق العميل (Logto Console) وخدماتنا الخلفية التحقق من هذه النطاقات لتحديد الميزات المرئية والأعمال المسموح بها.
حسنًا، حتى الآن، يبدو أن كل شيء متصل، وماذا أيضًا نفتقد؟
إدارة تحديثات النطاق في رموز الوصول تتضمن:
في Logto Cloud، يتحقق Console بفاعلية من نطاقات المستخدم باستخدام طلبات SWR، ونحن نقدم موافقة تلقائية كلما تم ترقية المستخدم إلى مدير.
إذا كنت تنفذ ميزة مشابهة مع RBAC، ستحتاج إلى آلية (مثل WebSocket أو أحداث خادم الدفع) لإخطار تطبيقك بتحديثات النطاق، مما يوفر إعادة موافقة أو إصدار رموز وصول جديدة تبعًا لذلك. ستقدم Logto أيضًا المزيد من الإشعارات المساعدة مع التحديثات المستقبلية.
ميزات متعدد المستأجرين والتعاون في Logto Cloud تستفيد من ميزة المنظمات لدينا. إذا كنت تقوم بتطوير تطبيق متعدد المستأجرين مشابه، فكر في استخدام هذه الميزة مع نهج مشابه.
آمل أن يكون هذا المنشور قد أثبت فائدته. لأي أسئلة أو مناقشات، لا تتردد في الانضمام إلى قناة Discord الخاصة بنا.