Logto في العمل: دمج Apache Answer بسلاسة لإطلاق مجتمع لمستخدميك
يوضح كيفية الاستفادة من ميزة التطبيق الداخلي من Logto لدمج Apache Answer، مما يخلق منصة مجتمع موحدة حيث يمكن للمستخدمين الوصول بسلاسة للدعم باستخدام حساباتهم الحالية.
يوضح كيفية الاستفادة من ميزة التطبيق الداخلي من Logto لدمج Apache Answer، مما يخلق منصة مجتمع موحدة حيث يمكن للمستخدمين الوصول بسلاسة للدعم باستخدام حساباتهم الحالية.
إن بناء منتج برمجي رائع هو إنجاز كبير، ولكنه في الواقع مجرد بداية الرحلة.
يعتمد النجاح طويل الأجل وتطور أي تطبيق بشكل كبير على فهم وتفاعل مع مستخدميه، وهو ما يتضمن جمع التغذية الراجعة، تحديد نقاط الألم، الإجابة على الأسئلة، وحل المشاكل —— وهي دورة مهمة تدفع للتكرار والتحسين.
في هذه المقالة، سأقوم بـ:
الميزة البارزة لاستخدام Logto هي أن المستخدمين يقومون بتسجيل الدخول إلى المجتمع بنفس الحساب كما في نظامك الخاصة. هذا يسمح لك بسهولة بمعرفة الحالة الحالية للمستخدمين الذين يطرحون أسئلة، مما يلغي الحاجة إلى تبادل متعدد ذهابًا وإيابًا للاستفسار عن وضعهم في برنامجك.

Apache Answer هو منصة أسئلة وأجوبة مفتوحة المصدر تربط بين المستخدمين والفرق. يقوم بتوفير مساحة لمشاركة المعرفة وحل المشاكل معًا. تتميز المنصة بمعاينة ماركداون في الوقت الحقيقي، والبحث المتقدم، ونظام التصويت على المحتوى.
المنصة تدعم تسجيل الدخول عبر OAuth 2.0 بشكل افتراضي. هذا يجعلها متوافقة طبيعيًا مع موفري الهوية الحاليين مثل Logto. يمكن للمستخدمين تسجيل الدخول بحساباتهم الحالية دون إنشاء بيانات اعتماد جديدة خصيصًا لمنصة المجتمع.
عندما نريد من المستخدمين تسجيل الدخول إلى التطبيقات الخارجية باستخدام حسابات Logto الخاصة بهم، فإن Logto يعمل كمزود هوية لتطبيقك (IdP).
فكر فيها باعتبارها السلطة المركزية المسؤولة عن التحقق من هوية المستخدمين. عندما يسجل المستخدم الدخول إلى تطبيقك الرئيسي، فمن المحتمل أن يتم إعادة توجيهه إلى Logto لتولي عملية المصادقة (اسم المستخدم/كلمة المرور، تسجيل الدخول الاجتماعي، إلخ). بمجرد أن يتحقق Logto بنجاح من المستخدم، يخبر تطبيقك بـ "نعم، هذا المستخدم شرعي" ويوفر بعض المعلومات الأساسية عنه.
هذا المفهوم يتجاوز مجرد التطبيق الرئيسي لديك. Logto يتضمن ميزة قوية —— تطبيق طرف ثالث. هذه الميزة تسمح لـ Logto بأداء دور IdP ليس فقط لتطبيقك الخاص، بل أيضًا لتلك التطبيقات الخارجية الأخرى التي ترغب في أن يصل إليها مستخدموك.
تحقق هذا باستخدام OpenID Connect (OIDC)، وهو طبقة هوية قياسية مبنية على بروتوكول OAuth 2.0. ببساطة، يتيح OIDC لتطبيق (مثل Apache Answer، المعروف باسم الطرف المعتمد أو العميل) طلب وتلقي معلومات حول هوية المستخدم من IdP (Logto).
عندما تقوم بتكوين تطبيق OIDC داخل Logto لـ Apache Answer، فأنت بشكل أساسي تقول لـ Logto: "كن مستعدًا للمصادقة على المستخدمين نيابة عن Apache Answer إذا طلب ذلك، وإذا وافق المستخدم، قم بإرسال بعض تفاصيل هوية المستخدم الأساسية بأمان إلى Answer." هذه القدرة هي المفتاح لفتح تسجيل دخول واحد سلس (SSO) بين تطبيقك المعتمد من Logto والأدوات الخارجية مثل Apache Answer.
قبل الغوص في التكوين، دعنا نوضح العناصر المكونة لمشهدنا:
لنبدأ الآن بالجانب العملي. يتضمن ذلك التكوين في كل من Logto وApache Answer.
اتبع دليل التثبيت الرسمي لتثبيت Apache Answer. وأخيرًا، يمكنك الوصول إليه عبر http://localhost:9080 افتراضيًا.
http://localhost:9080/answer/api/v1/connector/redirect/basic إلى حقل Redirect URI.profile وemail) للسماح لـ Apache Answer بتلقي معلومات أساسية عن المستخدم عند تسجيل الدخول.
http://localhost:9080/admin.sub.name.username.email.picture.email_verified.openid,profile,email.ملاحظة: تأكد من تضمين نطاق openid، والذي يتطلبه معيار OIDC لجلب معلومات المستخدم من User JSON URL. نظرًا لأن تطبيق الطرف الثالث من Logto يتم تنفيذه بناءً على OIDC، بينما يستخدم مكون Apache Answer OAuth 2.0، فإن هذا النطاق ضروري لضمان التدفق الصحيح للمصادقة بين النظامين.
مع تكوين كل من Logto وApache Answer، دعنا نرى تجربة المستخدم السلسة:

انقر فوق الزر، سيتم إعادة توجيهك إلى صفحة تسجيل الدخول إلى Logto.
بعد النقر على زر "اتصل باستخدام Logto"، سيتم إعادة توجيهك إلى Logto حيث يمكنك تسجيل الدخول باستخدام حسابك الحالي. ستشاهد بعد ذلك صفحة موافقة تطلب الإذن لمشاركة معلوماتك مع Apache Answer.


ملاحظة: يتحقق Apache Answer مما إذا كان المستخدم الذي قام بتسجيل الدخول لديه بريد إلكتروني موثوق. عندما لا يكون لدى المستخدم الخاص بك معلومات بريد إلكتروني، سيطلب Apache Answer منهم تقديم بريد إلكتروني للتحقق.
لماذا نمر بهذه الخطوات؟ الفوائد كبيرة:
تعد دمج الأدوات الخارجية أمرًا ضروريًا لبناء نظام بيئي برمجي غني، ولكن إدارة هويات المستخدمين عبر هذه الأدوات يمكن أن تكون صداعًا كبيرًا. كما أثبتنا مع Apache Answer، توفر ميزة تطبيق الطرف الثالث (OIDC) من Logto طريقة قوية وموحدة لسد هذه الفجوة.
من خلال تكوين Logto كمزود هوية مركزي لـ Apache Answer، يمكنك بشكل فعال "نقرة واحدة" تمكين مساحة مجتمع مخصصة لمستخدميك الحاليين، وتقديم تجربة تسجيل دخول سلسة وتوفير فوائد هوية المستخدم الموحدة لفريقك.
ما هو الأكثر إثارة هو أن هذه النمط ليست مقتصرة على منصات الأسئلة والأجوبة فقط؛ يمكن تطبيقه على لوحات معلومات التحليل، وأدوات إدارة المشاريع، والمرافق الداخلية، والعديد من التطبيقات الأخرى، مما يسمح لك ببناء نظام بيئي برمجي متكامل وسهل الاستخدام.
ابق على اطلاع في المقالات المستقبلية حيث قد نستكشف دمج أدوات مفيدة أخرى باستخدام Logto!